axyseo 2.0.0-alpha.0.0.37 → 2.0.0-alpha.0.0.39

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 (1260) 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 +134 -0
  5. package/build/config/diacritics.js.map +1 -0
  6. package/build/config/getTransliterations.js +3564 -0
  7. package/build/config/getTransliterations.js.map +1 -0
  8. package/build/config/transliterationsWPstyle.js +1417 -0
  9. package/build/config/transliterationsWPstyle.js.map +1 -0
  10. package/build/config/wordBoundaries.js +20 -0
  11. package/build/config/wordBoundaries.js.map +1 -0
  12. package/build/config/wordBoundariesWithoutPunctuation.js +10 -0
  13. package/build/config/wordBoundariesWithoutPunctuation.js.map +1 -0
  14. package/build/const/analysis.js +14 -0
  15. package/build/const/analysis.js.map +1 -0
  16. package/build/errors/invalidType.js +15 -0
  17. package/build/errors/invalidType.js.map +1 -0
  18. package/build/errors/missingArgument.js +15 -0
  19. package/build/errors/missingArgument.js.map +1 -0
  20. package/build/helpers/createMeasurementElement.js +39 -0
  21. package/build/helpers/createMeasurementElement.js.map +1 -0
  22. package/build/helpers/domManipulation.js +61 -0
  23. package/build/helpers/domManipulation.js.map +1 -0
  24. package/build/helpers/errors.js +21 -0
  25. package/build/helpers/errors.js.map +1 -0
  26. package/build/helpers/factory.js +201 -0
  27. package/build/helpers/factory.js.map +1 -0
  28. package/build/helpers/formatNumber.js +12 -0
  29. package/build/helpers/formatNumber.js.map +1 -0
  30. package/build/helpers/formatString.js +33 -0
  31. package/build/helpers/formatString.js.map +1 -0
  32. package/build/helpers/getLanguagesWithWordComplexity.js +9 -0
  33. package/build/helpers/getLanguagesWithWordComplexity.js.map +1 -0
  34. package/build/helpers/getLanguagesWithWordFormSupport.js +10 -0
  35. package/build/helpers/getLanguagesWithWordFormSupport.js.map +1 -0
  36. package/build/helpers/getWordComplexityConfig.js +21 -0
  37. package/build/helpers/getWordComplexityConfig.js.map +1 -0
  38. package/build/helpers/getWordComplexityHelper.js +21 -0
  39. package/build/helpers/getWordComplexityHelper.js.map +1 -0
  40. package/build/helpers/htmlEntities.js +16 -0
  41. package/build/helpers/htmlEntities.js.map +1 -0
  42. package/build/helpers/includesAny.js +19 -0
  43. package/build/helpers/includesAny.js.map +1 -0
  44. package/build/helpers/index.js +122 -0
  45. package/build/helpers/index.js.map +1 -0
  46. package/build/helpers/shortlinker/Shortlinker.js +72 -0
  47. package/build/helpers/shortlinker/Shortlinker.js.map +1 -0
  48. package/build/helpers/shortlinker/index.js +2 -0
  49. package/build/helpers/shortlinker/index.js.map +1 -0
  50. package/build/helpers/shortlinker/singleton.js +68 -0
  51. package/build/helpers/shortlinker/singleton.js.map +1 -0
  52. package/build/helpers/types.js +30 -0
  53. package/build/helpers/types.js.map +1 -0
  54. package/build/index.js +41 -0
  55. package/build/index.js.map +1 -0
  56. package/build/languageProcessing/AbstractResearcher.js +341 -0
  57. package/build/languageProcessing/AbstractResearcher.js.map +1 -0
  58. package/build/languageProcessing/helpers/highlighting/getMarkingsInSentence.js +116 -0
  59. package/build/languageProcessing/helpers/highlighting/getMarkingsInSentence.js.map +1 -0
  60. package/build/languageProcessing/helpers/html/getFieldsToMark.js +32 -0
  61. package/build/languageProcessing/helpers/html/getFieldsToMark.js.map +1 -0
  62. package/build/languageProcessing/helpers/html/getSubheadingTexts.js +42 -0
  63. package/build/languageProcessing/helpers/html/getSubheadingTexts.js.map +1 -0
  64. package/build/languageProcessing/helpers/html/getSubheadings.js +82 -0
  65. package/build/languageProcessing/helpers/html/getSubheadings.js.map +1 -0
  66. package/build/languageProcessing/helpers/html/html.js +144 -0
  67. package/build/languageProcessing/helpers/html/html.js.map +1 -0
  68. package/build/languageProcessing/helpers/html/htmlParser.js +125 -0
  69. package/build/languageProcessing/helpers/html/htmlParser.js.map +1 -0
  70. package/build/languageProcessing/helpers/html/matchParagraphs.js +56 -0
  71. package/build/languageProcessing/helpers/html/matchParagraphs.js.map +1 -0
  72. package/build/languageProcessing/helpers/html/normalizeHTML.js +17 -0
  73. package/build/languageProcessing/helpers/html/normalizeHTML.js.map +1 -0
  74. package/build/languageProcessing/helpers/image/getAltAttribute.js +18 -0
  75. package/build/languageProcessing/helpers/image/getAltAttribute.js.map +1 -0
  76. package/build/languageProcessing/helpers/image/getImagesInTree.js +15 -0
  77. package/build/languageProcessing/helpers/image/getImagesInTree.js.map +1 -0
  78. package/build/languageProcessing/helpers/image/imageInText.js +19 -0
  79. package/build/languageProcessing/helpers/image/imageInText.js.map +1 -0
  80. package/build/languageProcessing/helpers/index.js +6 -0
  81. package/build/languageProcessing/helpers/index.js.map +1 -0
  82. package/build/languageProcessing/helpers/language/getLanguage.js +10 -0
  83. package/build/languageProcessing/helpers/language/getLanguage.js.map +1 -0
  84. package/build/languageProcessing/helpers/link/checkNofollow.js +35 -0
  85. package/build/languageProcessing/helpers/link/checkNofollow.js.map +1 -0
  86. package/build/languageProcessing/helpers/link/getAnchorsFromText.js +31 -0
  87. package/build/languageProcessing/helpers/link/getAnchorsFromText.js.map +1 -0
  88. package/build/languageProcessing/helpers/link/getLinkType.js +30 -0
  89. package/build/languageProcessing/helpers/link/getLinkType.js.map +1 -0
  90. package/build/languageProcessing/helpers/match/findKeywordFormsInString.js +94 -0
  91. package/build/languageProcessing/helpers/match/findKeywordFormsInString.js.map +1 -0
  92. package/build/languageProcessing/helpers/match/isDoubleQuoted.js +13 -0
  93. package/build/languageProcessing/helpers/match/isDoubleQuoted.js.map +1 -0
  94. package/build/languageProcessing/helpers/match/matchTextWithArray.js +35 -0
  95. package/build/languageProcessing/helpers/match/matchTextWithArray.js.map +1 -0
  96. package/build/languageProcessing/helpers/match/matchTextWithTransliteration.js +52 -0
  97. package/build/languageProcessing/helpers/match/matchTextWithTransliteration.js.map +1 -0
  98. package/build/languageProcessing/helpers/match/matchTextWithWord.js +41 -0
  99. package/build/languageProcessing/helpers/match/matchTextWithWord.js.map +1 -0
  100. package/build/languageProcessing/helpers/match/matchWordFormsWithSentence.js +155 -0
  101. package/build/languageProcessing/helpers/match/matchWordFormsWithSentence.js.map +1 -0
  102. package/build/languageProcessing/helpers/match/processExactMatchRequest.js +23 -0
  103. package/build/languageProcessing/helpers/match/processExactMatchRequest.js.map +1 -0
  104. package/build/languageProcessing/helpers/morphology/baseStemmer.js +12 -0
  105. package/build/languageProcessing/helpers/morphology/baseStemmer.js.map +1 -0
  106. package/build/languageProcessing/helpers/morphology/buildFormRule.js +20 -0
  107. package/build/languageProcessing/helpers/morphology/buildFormRule.js.map +1 -0
  108. package/build/languageProcessing/helpers/morphology/buildTopicStems.js +154 -0
  109. package/build/languageProcessing/helpers/morphology/buildTopicStems.js.map +1 -0
  110. package/build/languageProcessing/helpers/morphology/createRulesFromArrays.js +41 -0
  111. package/build/languageProcessing/helpers/morphology/createRulesFromArrays.js.map +1 -0
  112. package/build/languageProcessing/helpers/morphology/exceptionListHelpers.js +63 -0
  113. package/build/languageProcessing/helpers/morphology/exceptionListHelpers.js.map +1 -0
  114. package/build/languageProcessing/helpers/morphology/findMatchingEndingInArray.js +23 -0
  115. package/build/languageProcessing/helpers/morphology/findMatchingEndingInArray.js.map +1 -0
  116. package/build/languageProcessing/helpers/morphology/flattenSortLength.js +14 -0
  117. package/build/languageProcessing/helpers/morphology/flattenSortLength.js.map +1 -0
  118. package/build/languageProcessing/helpers/morphology/getAllWordsFromPaper.js +29 -0
  119. package/build/languageProcessing/helpers/morphology/getAllWordsFromPaper.js.map +1 -0
  120. package/build/languageProcessing/helpers/morphology/regexHelpers.js +45 -0
  121. package/build/languageProcessing/helpers/morphology/regexHelpers.js.map +1 -0
  122. package/build/languageProcessing/helpers/morphology/stemHelpers.js +39 -0
  123. package/build/languageProcessing/helpers/morphology/stemHelpers.js.map +1 -0
  124. package/build/languageProcessing/helpers/morphology/stemPrefixedFunctionWords.js +33 -0
  125. package/build/languageProcessing/helpers/morphology/stemPrefixedFunctionWords.js.map +1 -0
  126. package/build/languageProcessing/helpers/passiveVoice/periphrastic/directPrecedenceException.js +36 -0
  127. package/build/languageProcessing/helpers/passiveVoice/periphrastic/directPrecedenceException.js.map +1 -0
  128. package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/getClausesSplitOnStopWords.js +110 -0
  129. package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/getClausesSplitOnStopWords.js.map +1 -0
  130. package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/nonDirectParticiplePrecedenceException.js +39 -0
  131. package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/nonDirectParticiplePrecedenceException.js.map +1 -0
  132. package/build/languageProcessing/helpers/passiveVoice/periphrastic/getClauses.js +214 -0
  133. package/build/languageProcessing/helpers/passiveVoice/periphrastic/getClauses.js.map +1 -0
  134. package/build/languageProcessing/helpers/passiveVoice/periphrastic/getIndicesWithRegex.js +21 -0
  135. package/build/languageProcessing/helpers/passiveVoice/periphrastic/getIndicesWithRegex.js.map +1 -0
  136. package/build/languageProcessing/helpers/passiveVoice/periphrastic/matchRegularParticiples.js +23 -0
  137. package/build/languageProcessing/helpers/passiveVoice/periphrastic/matchRegularParticiples.js.map +1 -0
  138. package/build/languageProcessing/helpers/passiveVoice/periphrastic/precedenceException.js +40 -0
  139. package/build/languageProcessing/helpers/passiveVoice/periphrastic/precedenceException.js.map +1 -0
  140. package/build/languageProcessing/helpers/prominentWords/determineProminentWords.js +191 -0
  141. package/build/languageProcessing/helpers/prominentWords/determineProminentWords.js.map +1 -0
  142. package/build/languageProcessing/helpers/regex/createRegexFromArray.js +32 -0
  143. package/build/languageProcessing/helpers/regex/createRegexFromArray.js.map +1 -0
  144. package/build/languageProcessing/helpers/regex/createRegexFromDoubleArray.js +33 -0
  145. package/build/languageProcessing/helpers/regex/createRegexFromDoubleArray.js.map +1 -0
  146. package/build/languageProcessing/helpers/regex/createWordRegex.js +28 -0
  147. package/build/languageProcessing/helpers/regex/createWordRegex.js.map +1 -0
  148. package/build/languageProcessing/helpers/regex/matchStringWithRegex.js +18 -0
  149. package/build/languageProcessing/helpers/regex/matchStringWithRegex.js.map +1 -0
  150. package/build/languageProcessing/helpers/regex/searchAndReplaceWithOneRegex.js +15 -0
  151. package/build/languageProcessing/helpers/regex/searchAndReplaceWithOneRegex.js.map +1 -0
  152. package/build/languageProcessing/helpers/sanitize/doubleQuotes.js +13 -0
  153. package/build/languageProcessing/helpers/sanitize/doubleQuotes.js.map +1 -0
  154. package/build/languageProcessing/helpers/sanitize/filterShortcodesFromTree.js +123 -0
  155. package/build/languageProcessing/helpers/sanitize/filterShortcodesFromTree.js.map +1 -0
  156. package/build/languageProcessing/helpers/sanitize/mergeListItems.js +24 -0
  157. package/build/languageProcessing/helpers/sanitize/mergeListItems.js.map +1 -0
  158. package/build/languageProcessing/helpers/sanitize/parseSynonyms.js +18 -0
  159. package/build/languageProcessing/helpers/sanitize/parseSynonyms.js.map +1 -0
  160. package/build/languageProcessing/helpers/sanitize/quotes.js +39 -0
  161. package/build/languageProcessing/helpers/sanitize/quotes.js.map +1 -0
  162. package/build/languageProcessing/helpers/sanitize/removeEmailAddresses.js +13 -0
  163. package/build/languageProcessing/helpers/sanitize/removeEmailAddresses.js.map +1 -0
  164. package/build/languageProcessing/helpers/sanitize/removePunctuation.js +58 -0
  165. package/build/languageProcessing/helpers/sanitize/removePunctuation.js.map +1 -0
  166. package/build/languageProcessing/helpers/sanitize/removePunctuationExceptQuotes.js +18 -0
  167. package/build/languageProcessing/helpers/sanitize/removePunctuationExceptQuotes.js.map +1 -0
  168. package/build/languageProcessing/helpers/sanitize/removeSentenceTerminators.js +14 -0
  169. package/build/languageProcessing/helpers/sanitize/removeSentenceTerminators.js.map +1 -0
  170. package/build/languageProcessing/helpers/sanitize/removeURLs.js +13 -0
  171. package/build/languageProcessing/helpers/sanitize/removeURLs.js.map +1 -0
  172. package/build/languageProcessing/helpers/sanitize/sanitizeLineBreakTag.js +12 -0
  173. package/build/languageProcessing/helpers/sanitize/sanitizeLineBreakTag.js.map +1 -0
  174. package/build/languageProcessing/helpers/sanitize/sanitizeString.js +18 -0
  175. package/build/languageProcessing/helpers/sanitize/sanitizeString.js.map +1 -0
  176. package/build/languageProcessing/helpers/sanitize/stripHTMLTags.js +50 -0
  177. package/build/languageProcessing/helpers/sanitize/stripHTMLTags.js.map +1 -0
  178. package/build/languageProcessing/helpers/sanitize/stripNonTextTags.js +16 -0
  179. package/build/languageProcessing/helpers/sanitize/stripNonTextTags.js.map +1 -0
  180. package/build/languageProcessing/helpers/sanitize/stripNumbers.js +20 -0
  181. package/build/languageProcessing/helpers/sanitize/stripNumbers.js.map +1 -0
  182. package/build/languageProcessing/helpers/sanitize/stripSpaces.js +23 -0
  183. package/build/languageProcessing/helpers/sanitize/stripSpaces.js.map +1 -0
  184. package/build/languageProcessing/helpers/sanitize/stripWordBoundaries.js +57 -0
  185. package/build/languageProcessing/helpers/sanitize/stripWordBoundaries.js.map +1 -0
  186. package/build/languageProcessing/helpers/sanitize/unifyWhitespace.js +55 -0
  187. package/build/languageProcessing/helpers/sanitize/unifyWhitespace.js.map +1 -0
  188. package/build/languageProcessing/helpers/sentence/SentenceTokenizer.js +558 -0
  189. package/build/languageProcessing/helpers/sentence/SentenceTokenizer.js.map +1 -0
  190. package/build/languageProcessing/helpers/sentence/countSentences.js +21 -0
  191. package/build/languageProcessing/helpers/sentence/countSentences.js.map +1 -0
  192. package/build/languageProcessing/helpers/sentence/getSentences.js +64 -0
  193. package/build/languageProcessing/helpers/sentence/getSentences.js.map +1 -0
  194. package/build/languageProcessing/helpers/sentence/getSentencesFromTree.js +53 -0
  195. package/build/languageProcessing/helpers/sentence/getSentencesFromTree.js.map +1 -0
  196. package/build/languageProcessing/helpers/sentence/memoizedSentenceTokenizer.js +31 -0
  197. package/build/languageProcessing/helpers/sentence/memoizedSentenceTokenizer.js.map +1 -0
  198. package/build/languageProcessing/helpers/sentence/sentencesLength.js +31 -0
  199. package/build/languageProcessing/helpers/sentence/sentencesLength.js.map +1 -0
  200. package/build/languageProcessing/helpers/syllables/DeviationFragment.js +102 -0
  201. package/build/languageProcessing/helpers/syllables/DeviationFragment.js.map +1 -0
  202. package/build/languageProcessing/helpers/syllables/countSyllables.js +166 -0
  203. package/build/languageProcessing/helpers/syllables/countSyllables.js.map +1 -0
  204. package/build/languageProcessing/helpers/syllables/syllableCountIterator.js +56 -0
  205. package/build/languageProcessing/helpers/syllables/syllableCountIterator.js.map +1 -0
  206. package/build/languageProcessing/helpers/syllables/syllableCountStep.js +68 -0
  207. package/build/languageProcessing/helpers/syllables/syllableCountStep.js.map +1 -0
  208. package/build/languageProcessing/helpers/transform/transformWordsWithHyphens.js +18 -0
  209. package/build/languageProcessing/helpers/transform/transformWordsWithHyphens.js.map +1 -0
  210. package/build/languageProcessing/helpers/transliterate/replaceDiacritics.js +19 -0
  211. package/build/languageProcessing/helpers/transliterate/replaceDiacritics.js.map +1 -0
  212. package/build/languageProcessing/helpers/transliterate/specialCharacterMappings.js +183 -0
  213. package/build/languageProcessing/helpers/transliterate/specialCharacterMappings.js.map +1 -0
  214. package/build/languageProcessing/helpers/transliterate/transliterate.js +18 -0
  215. package/build/languageProcessing/helpers/transliterate/transliterate.js.map +1 -0
  216. package/build/languageProcessing/helpers/transliterate/transliterateWPstyle.js +19 -0
  217. package/build/languageProcessing/helpers/transliterate/transliterateWPstyle.js.map +1 -0
  218. package/build/languageProcessing/helpers/url/parseSlug.js +11 -0
  219. package/build/languageProcessing/helpers/url/parseSlug.js.map +1 -0
  220. package/build/languageProcessing/helpers/url/url.js +168 -0
  221. package/build/languageProcessing/helpers/url/url.js.map +1 -0
  222. package/build/languageProcessing/helpers/word/addWordboundary.js +35 -0
  223. package/build/languageProcessing/helpers/word/addWordboundary.js.map +1 -0
  224. package/build/languageProcessing/helpers/word/areWordsInSentence.js +17 -0
  225. package/build/languageProcessing/helpers/word/areWordsInSentence.js.map +1 -0
  226. package/build/languageProcessing/helpers/word/countMetaDescriptionLength.js +18 -0
  227. package/build/languageProcessing/helpers/word/countMetaDescriptionLength.js.map +1 -0
  228. package/build/languageProcessing/helpers/word/countWords.js +15 -0
  229. package/build/languageProcessing/helpers/word/countWords.js.map +1 -0
  230. package/build/languageProcessing/helpers/word/createPunctuationTokens.js +41 -0
  231. package/build/languageProcessing/helpers/word/createPunctuationTokens.js.map +1 -0
  232. package/build/languageProcessing/helpers/word/filterWordsFromArray.js +16 -0
  233. package/build/languageProcessing/helpers/word/filterWordsFromArray.js.map +1 -0
  234. package/build/languageProcessing/helpers/word/followsIndex.js +24 -0
  235. package/build/languageProcessing/helpers/word/followsIndex.js.map +1 -0
  236. package/build/languageProcessing/helpers/word/getAllWordsFromTree.js +24 -0
  237. package/build/languageProcessing/helpers/word/getAllWordsFromTree.js.map +1 -0
  238. package/build/languageProcessing/helpers/word/getWords.js +37 -0
  239. package/build/languageProcessing/helpers/word/getWords.js.map +1 -0
  240. package/build/languageProcessing/helpers/word/includesIndex.js +29 -0
  241. package/build/languageProcessing/helpers/word/includesIndex.js.map +1 -0
  242. package/build/languageProcessing/helpers/word/indices.js +130 -0
  243. package/build/languageProcessing/helpers/word/indices.js.map +1 -0
  244. package/build/languageProcessing/helpers/word/markWordsInSentences.js +177 -0
  245. package/build/languageProcessing/helpers/word/markWordsInSentences.js.map +1 -0
  246. package/build/languageProcessing/helpers/word/matchWordInSentence.js +56 -0
  247. package/build/languageProcessing/helpers/word/matchWordInSentence.js.map +1 -0
  248. package/build/languageProcessing/helpers/word/splitIntoTokens.js +46 -0
  249. package/build/languageProcessing/helpers/word/splitIntoTokens.js.map +1 -0
  250. package/build/languageProcessing/index.js +42 -0
  251. package/build/languageProcessing/index.js.map +1 -0
  252. package/build/languageProcessing/languages/_default/Researcher.js +35 -0
  253. package/build/languageProcessing/languages/_default/Researcher.js.map +1 -0
  254. package/build/languageProcessing/languages/_default/helpers/getStemmer.js +14 -0
  255. package/build/languageProcessing/languages/_default/helpers/getStemmer.js.map +1 -0
  256. package/build/languageProcessing/languages/ar/Researcher.js +46 -0
  257. package/build/languageProcessing/languages/ar/Researcher.js.map +1 -0
  258. package/build/languageProcessing/languages/ar/config/firstWordExceptions.js +12 -0
  259. package/build/languageProcessing/languages/ar/config/firstWordExceptions.js.map +1 -0
  260. package/build/languageProcessing/languages/ar/config/functionWords.js +74 -0
  261. package/build/languageProcessing/languages/ar/config/functionWords.js.map +1 -0
  262. package/build/languageProcessing/languages/ar/config/internal/passiveVerbsWithLongVowel.js +7 -0
  263. package/build/languageProcessing/languages/ar/config/internal/passiveVerbsWithLongVowel.js.map +1 -0
  264. package/build/languageProcessing/languages/ar/config/prefixedFunctionWords.js +5 -0
  265. package/build/languageProcessing/languages/ar/config/prefixedFunctionWords.js.map +1 -0
  266. package/build/languageProcessing/languages/ar/config/transitionWords.js +7 -0
  267. package/build/languageProcessing/languages/ar/config/transitionWords.js.map +1 -0
  268. package/build/languageProcessing/languages/ar/config/twoPartTransitionWords.js +8 -0
  269. package/build/languageProcessing/languages/ar/config/twoPartTransitionWords.js.map +1 -0
  270. package/build/languageProcessing/languages/ar/helpers/createBasicWordForms.js +33 -0
  271. package/build/languageProcessing/languages/ar/helpers/createBasicWordForms.js.map +1 -0
  272. package/build/languageProcessing/languages/ar/helpers/getStemmer.js +22 -0
  273. package/build/languageProcessing/languages/ar/helpers/getStemmer.js.map +1 -0
  274. package/build/languageProcessing/languages/ar/helpers/internal/stem.js +629 -0
  275. package/build/languageProcessing/languages/ar/helpers/internal/stem.js.map +1 -0
  276. package/build/languageProcessing/languages/ar/helpers/isPassiveSentence.js +34 -0
  277. package/build/languageProcessing/languages/ar/helpers/isPassiveSentence.js.map +1 -0
  278. package/build/languageProcessing/languages/ca/Researcher.js +44 -0
  279. package/build/languageProcessing/languages/ca/Researcher.js.map +1 -0
  280. package/build/languageProcessing/languages/ca/config/sentenceLength.js +4 -0
  281. package/build/languageProcessing/languages/ca/config/sentenceLength.js.map +1 -0
  282. package/build/languageProcessing/languages/ca/config/transitionWords.js +7 -0
  283. package/build/languageProcessing/languages/ca/config/transitionWords.js.map +1 -0
  284. package/build/languageProcessing/languages/ca/config/twoPartTransitionWords.js +8 -0
  285. package/build/languageProcessing/languages/ca/config/twoPartTransitionWords.js.map +1 -0
  286. package/build/languageProcessing/languages/ca/helpers/getStemmer.js +14 -0
  287. package/build/languageProcessing/languages/ca/helpers/getStemmer.js.map +1 -0
  288. package/build/languageProcessing/languages/cs/Researcher.js +44 -0
  289. package/build/languageProcessing/languages/cs/Researcher.js.map +1 -0
  290. package/build/languageProcessing/languages/cs/config/firstWordExceptions.js +14 -0
  291. package/build/languageProcessing/languages/cs/config/firstWordExceptions.js.map +1 -0
  292. package/build/languageProcessing/languages/cs/config/functionWords.js +44 -0
  293. package/build/languageProcessing/languages/cs/config/functionWords.js.map +1 -0
  294. package/build/languageProcessing/languages/cs/config/internal/passiveVoiceAuxiliaries.js +4 -0
  295. package/build/languageProcessing/languages/cs/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
  296. package/build/languageProcessing/languages/cs/config/internal/passiveVoiceEndings.js +8 -0
  297. package/build/languageProcessing/languages/cs/config/internal/passiveVoiceEndings.js.map +1 -0
  298. package/build/languageProcessing/languages/cs/config/stopWords.js +6 -0
  299. package/build/languageProcessing/languages/cs/config/stopWords.js.map +1 -0
  300. package/build/languageProcessing/languages/cs/config/transitionWords.js +7 -0
  301. package/build/languageProcessing/languages/cs/config/transitionWords.js.map +1 -0
  302. package/build/languageProcessing/languages/cs/config/twoPartTransitionWords.js +8 -0
  303. package/build/languageProcessing/languages/cs/config/twoPartTransitionWords.js.map +1 -0
  304. package/build/languageProcessing/languages/cs/helpers/getClauses.js +28 -0
  305. package/build/languageProcessing/languages/cs/helpers/getClauses.js.map +1 -0
  306. package/build/languageProcessing/languages/cs/helpers/getStemmer.js +22 -0
  307. package/build/languageProcessing/languages/cs/helpers/getStemmer.js.map +1 -0
  308. package/build/languageProcessing/languages/cs/helpers/internal/getParticiples.js +18 -0
  309. package/build/languageProcessing/languages/cs/helpers/internal/getParticiples.js.map +1 -0
  310. package/build/languageProcessing/languages/cs/helpers/internal/stem.js +335 -0
  311. package/build/languageProcessing/languages/cs/helpers/internal/stem.js.map +1 -0
  312. package/build/languageProcessing/languages/cs/values/Clause.js +38 -0
  313. package/build/languageProcessing/languages/cs/values/Clause.js.map +1 -0
  314. package/build/languageProcessing/languages/de/Researcher.js +53 -0
  315. package/build/languageProcessing/languages/de/Researcher.js.map +1 -0
  316. package/build/languageProcessing/languages/de/config/firstWordExceptions.js +14 -0
  317. package/build/languageProcessing/languages/de/config/firstWordExceptions.js.map +1 -0
  318. package/build/languageProcessing/languages/de/config/functionWords.js +95 -0
  319. package/build/languageProcessing/languages/de/config/functionWords.js.map +1 -0
  320. package/build/languageProcessing/languages/de/config/internal/exceptionsParticiplesActive.js +7 -0
  321. package/build/languageProcessing/languages/de/config/internal/exceptionsParticiplesActive.js.map +1 -0
  322. package/build/languageProcessing/languages/de/config/internal/passiveVoiceAuxiliaries.js +23 -0
  323. package/build/languageProcessing/languages/de/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
  324. package/build/languageProcessing/languages/de/config/internal/passiveVoiceIrregulars.js +9 -0
  325. package/build/languageProcessing/languages/de/config/internal/passiveVoiceIrregulars.js.map +1 -0
  326. package/build/languageProcessing/languages/de/config/internal/passiveVoiceRegex.js +72 -0
  327. package/build/languageProcessing/languages/de/config/internal/passiveVoiceRegex.js.map +1 -0
  328. package/build/languageProcessing/languages/de/config/keyphraseLength.js +11 -0
  329. package/build/languageProcessing/languages/de/config/keyphraseLength.js.map +1 -0
  330. package/build/languageProcessing/languages/de/config/stopWords.js +6 -0
  331. package/build/languageProcessing/languages/de/config/stopWords.js.map +1 -0
  332. package/build/languageProcessing/languages/de/config/syllables.json +460 -0
  333. package/build/languageProcessing/languages/de/config/transitionWords.js +7 -0
  334. package/build/languageProcessing/languages/de/config/transitionWords.js.map +1 -0
  335. package/build/languageProcessing/languages/de/config/twoPartTransitionWords.js +8 -0
  336. package/build/languageProcessing/languages/de/config/twoPartTransitionWords.js.map +1 -0
  337. package/build/languageProcessing/languages/de/config/wordComplexity.js +5 -0
  338. package/build/languageProcessing/languages/de/config/wordComplexity.js.map +1 -0
  339. package/build/languageProcessing/languages/de/helpers/calculateFleschReadingScore.js +17 -0
  340. package/build/languageProcessing/languages/de/helpers/calculateFleschReadingScore.js.map +1 -0
  341. package/build/languageProcessing/languages/de/helpers/checkIfWordIsComplex.js +41 -0
  342. package/build/languageProcessing/languages/de/helpers/checkIfWordIsComplex.js.map +1 -0
  343. package/build/languageProcessing/languages/de/helpers/checkIfWordIsFunction.js +15 -0
  344. package/build/languageProcessing/languages/de/helpers/checkIfWordIsFunction.js.map +1 -0
  345. package/build/languageProcessing/languages/de/helpers/getClauses.js +27 -0
  346. package/build/languageProcessing/languages/de/helpers/getClauses.js.map +1 -0
  347. package/build/languageProcessing/languages/de/helpers/getStemmer.js +22 -0
  348. package/build/languageProcessing/languages/de/helpers/getStemmer.js.map +1 -0
  349. package/build/languageProcessing/languages/de/helpers/internal/SentenceTokenizer.js +31 -0
  350. package/build/languageProcessing/languages/de/helpers/internal/SentenceTokenizer.js.map +1 -0
  351. package/build/languageProcessing/languages/de/helpers/internal/detectAndStemRegularParticiple.js +112 -0
  352. package/build/languageProcessing/languages/de/helpers/internal/detectAndStemRegularParticiple.js.map +1 -0
  353. package/build/languageProcessing/languages/de/helpers/internal/determineStem.js +107 -0
  354. package/build/languageProcessing/languages/de/helpers/internal/determineStem.js.map +1 -0
  355. package/build/languageProcessing/languages/de/helpers/internal/getParticiples.js +32 -0
  356. package/build/languageProcessing/languages/de/helpers/internal/getParticiples.js.map +1 -0
  357. package/build/languageProcessing/languages/de/helpers/internal/stem.js +216 -0
  358. package/build/languageProcessing/languages/de/helpers/internal/stem.js.map +1 -0
  359. package/build/languageProcessing/languages/de/helpers/memoizedSentenceTokenizer.js +31 -0
  360. package/build/languageProcessing/languages/de/helpers/memoizedSentenceTokenizer.js.map +1 -0
  361. package/build/languageProcessing/languages/de/values/Clause.js +84 -0
  362. package/build/languageProcessing/languages/de/values/Clause.js.map +1 -0
  363. package/build/languageProcessing/languages/el/Researcher.js +47 -0
  364. package/build/languageProcessing/languages/el/Researcher.js.map +1 -0
  365. package/build/languageProcessing/languages/el/config/firstWordExceptions.js +27 -0
  366. package/build/languageProcessing/languages/el/config/firstWordExceptions.js.map +1 -0
  367. package/build/languageProcessing/languages/el/config/functionWords.js +41 -0
  368. package/build/languageProcessing/languages/el/config/functionWords.js.map +1 -0
  369. package/build/languageProcessing/languages/el/config/internal/auxiliaries.js +6 -0
  370. package/build/languageProcessing/languages/el/config/internal/auxiliaries.js.map +1 -0
  371. package/build/languageProcessing/languages/el/config/internal/morphologicalPassiveSuffixes.js +2 -0
  372. package/build/languageProcessing/languages/el/config/internal/morphologicalPassiveSuffixes.js.map +1 -0
  373. package/build/languageProcessing/languages/el/config/internal/nonPassiveVerbStems.js +16 -0
  374. package/build/languageProcessing/languages/el/config/internal/nonPassiveVerbStems.js.map +1 -0
  375. package/build/languageProcessing/languages/el/config/stopWords.js +7 -0
  376. package/build/languageProcessing/languages/el/config/stopWords.js.map +1 -0
  377. package/build/languageProcessing/languages/el/config/transitionWords.js +12 -0
  378. package/build/languageProcessing/languages/el/config/transitionWords.js.map +1 -0
  379. package/build/languageProcessing/languages/el/config/twoPartTransitionWords.js +8 -0
  380. package/build/languageProcessing/languages/el/config/twoPartTransitionWords.js.map +1 -0
  381. package/build/languageProcessing/languages/el/helpers/getClauses.js +27 -0
  382. package/build/languageProcessing/languages/el/helpers/getClauses.js.map +1 -0
  383. package/build/languageProcessing/languages/el/helpers/getStemmer.js +22 -0
  384. package/build/languageProcessing/languages/el/helpers/getStemmer.js.map +1 -0
  385. package/build/languageProcessing/languages/el/helpers/internal/getParticiples.js +18 -0
  386. package/build/languageProcessing/languages/el/helpers/internal/getParticiples.js.map +1 -0
  387. package/build/languageProcessing/languages/el/helpers/internal/stem.js +338 -0
  388. package/build/languageProcessing/languages/el/helpers/internal/stem.js.map +1 -0
  389. package/build/languageProcessing/languages/el/helpers/isPassiveSentence.js +36 -0
  390. package/build/languageProcessing/languages/el/helpers/isPassiveSentence.js.map +1 -0
  391. package/build/languageProcessing/languages/el/values/Clause.js +40 -0
  392. package/build/languageProcessing/languages/el/values/Clause.js.map +1 -0
  393. package/build/languageProcessing/languages/en/Researcher.js +47 -0
  394. package/build/languageProcessing/languages/en/Researcher.js.map +1 -0
  395. package/build/languageProcessing/languages/en/config/abbreviations.js +10 -0
  396. package/build/languageProcessing/languages/en/config/abbreviations.js.map +1 -0
  397. package/build/languageProcessing/languages/en/config/firstWordExceptions.js +14 -0
  398. package/build/languageProcessing/languages/en/config/firstWordExceptions.js.map +1 -0
  399. package/build/languageProcessing/languages/en/config/functionWords.js +103 -0
  400. package/build/languageProcessing/languages/en/config/functionWords.js.map +1 -0
  401. package/build/languageProcessing/languages/en/config/internal/passiveVoiceAuxiliaries.js +9 -0
  402. package/build/languageProcessing/languages/en/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
  403. package/build/languageProcessing/languages/en/config/internal/passiveVoiceIrregulars.js +9 -0
  404. package/build/languageProcessing/languages/en/config/internal/passiveVoiceIrregulars.js.map +1 -0
  405. package/build/languageProcessing/languages/en/config/internal/passiveVoiceNonVerbEndingEd.js +7 -0
  406. package/build/languageProcessing/languages/en/config/internal/passiveVoiceNonVerbEndingEd.js.map +1 -0
  407. package/build/languageProcessing/languages/en/config/regularParticiplesRegex.js +6 -0
  408. package/build/languageProcessing/languages/en/config/regularParticiplesRegex.js.map +1 -0
  409. package/build/languageProcessing/languages/en/config/stopWords.js +6 -0
  410. package/build/languageProcessing/languages/en/config/stopWords.js.map +1 -0
  411. package/build/languageProcessing/languages/en/config/syllables.json +86 -0
  412. package/build/languageProcessing/languages/en/config/transitionWords.js +7 -0
  413. package/build/languageProcessing/languages/en/config/transitionWords.js.map +1 -0
  414. package/build/languageProcessing/languages/en/config/twoPartTransitionWords.js +8 -0
  415. package/build/languageProcessing/languages/en/config/twoPartTransitionWords.js.map +1 -0
  416. package/build/languageProcessing/languages/en/config/wordComplexity.js +6 -0
  417. package/build/languageProcessing/languages/en/config/wordComplexity.js.map +1 -0
  418. package/build/languageProcessing/languages/en/helpers/calculateFleschReadingScore.js +17 -0
  419. package/build/languageProcessing/languages/en/helpers/calculateFleschReadingScore.js.map +1 -0
  420. package/build/languageProcessing/languages/en/helpers/checkIfWordIsComplex.js +43 -0
  421. package/build/languageProcessing/languages/en/helpers/checkIfWordIsComplex.js.map +1 -0
  422. package/build/languageProcessing/languages/en/helpers/getClauses.js +51 -0
  423. package/build/languageProcessing/languages/en/helpers/getClauses.js.map +1 -0
  424. package/build/languageProcessing/languages/en/helpers/getStemmer.js +22 -0
  425. package/build/languageProcessing/languages/en/helpers/getStemmer.js.map +1 -0
  426. package/build/languageProcessing/languages/en/helpers/internal/determineStem.js +150 -0
  427. package/build/languageProcessing/languages/en/helpers/internal/determineStem.js.map +1 -0
  428. package/build/languageProcessing/languages/en/helpers/internal/getAdjectiveStem.js +142 -0
  429. package/build/languageProcessing/languages/en/helpers/internal/getAdjectiveStem.js.map +1 -0
  430. package/build/languageProcessing/languages/en/helpers/internal/getParticiples.js +27 -0
  431. package/build/languageProcessing/languages/en/helpers/internal/getParticiples.js.map +1 -0
  432. package/build/languageProcessing/languages/en/helpers/internal/getVerbStem.js +218 -0
  433. package/build/languageProcessing/languages/en/helpers/internal/getVerbStem.js.map +1 -0
  434. package/build/languageProcessing/languages/en/values/Clause.js +61 -0
  435. package/build/languageProcessing/languages/en/values/Clause.js.map +1 -0
  436. package/build/languageProcessing/languages/es/Researcher.js +49 -0
  437. package/build/languageProcessing/languages/es/Researcher.js.map +1 -0
  438. package/build/languageProcessing/languages/es/config/firstWordExceptions.js +14 -0
  439. package/build/languageProcessing/languages/es/config/firstWordExceptions.js.map +1 -0
  440. package/build/languageProcessing/languages/es/config/functionWords.js +105 -0
  441. package/build/languageProcessing/languages/es/config/functionWords.js.map +1 -0
  442. package/build/languageProcessing/languages/es/config/internal/passiveVoiceAuxiliaries.js +6 -0
  443. package/build/languageProcessing/languages/es/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
  444. package/build/languageProcessing/languages/es/config/internal/passiveVoiceParticiples.js +7 -0
  445. package/build/languageProcessing/languages/es/config/internal/passiveVoiceParticiples.js.map +1 -0
  446. package/build/languageProcessing/languages/es/config/sentenceLength.js +4 -0
  447. package/build/languageProcessing/languages/es/config/sentenceLength.js.map +1 -0
  448. package/build/languageProcessing/languages/es/config/stopWords.js +6 -0
  449. package/build/languageProcessing/languages/es/config/stopWords.js.map +1 -0
  450. package/build/languageProcessing/languages/es/config/syllables.json +176 -0
  451. package/build/languageProcessing/languages/es/config/transitionWords.js +7 -0
  452. package/build/languageProcessing/languages/es/config/transitionWords.js.map +1 -0
  453. package/build/languageProcessing/languages/es/config/twoPartTransitionWords.js +8 -0
  454. package/build/languageProcessing/languages/es/config/twoPartTransitionWords.js.map +1 -0
  455. package/build/languageProcessing/languages/es/config/wordComplexity.js +5 -0
  456. package/build/languageProcessing/languages/es/config/wordComplexity.js.map +1 -0
  457. package/build/languageProcessing/languages/es/helpers/calculateFleschReadingScore.js +17 -0
  458. package/build/languageProcessing/languages/es/helpers/calculateFleschReadingScore.js.map +1 -0
  459. package/build/languageProcessing/languages/es/helpers/checkIfWordIsComplex.js +53 -0
  460. package/build/languageProcessing/languages/es/helpers/checkIfWordIsComplex.js.map +1 -0
  461. package/build/languageProcessing/languages/es/helpers/getClauses.js +31 -0
  462. package/build/languageProcessing/languages/es/helpers/getClauses.js.map +1 -0
  463. package/build/languageProcessing/languages/es/helpers/getStemmer.js +22 -0
  464. package/build/languageProcessing/languages/es/helpers/getStemmer.js.map +1 -0
  465. package/build/languageProcessing/languages/es/helpers/internal/checkVerbStemModifications.js +34 -0
  466. package/build/languageProcessing/languages/es/helpers/internal/checkVerbStemModifications.js.map +1 -0
  467. package/build/languageProcessing/languages/es/helpers/internal/getParticiples.js +37 -0
  468. package/build/languageProcessing/languages/es/helpers/internal/getParticiples.js.map +1 -0
  469. package/build/languageProcessing/languages/es/helpers/internal/stem.js +566 -0
  470. package/build/languageProcessing/languages/es/helpers/internal/stem.js.map +1 -0
  471. package/build/languageProcessing/languages/es/values/Clause.js +42 -0
  472. package/build/languageProcessing/languages/es/values/Clause.js.map +1 -0
  473. package/build/languageProcessing/languages/fa/Researcher.js +48 -0
  474. package/build/languageProcessing/languages/fa/Researcher.js.map +1 -0
  475. package/build/languageProcessing/languages/fa/config/firstWordExceptions.js +12 -0
  476. package/build/languageProcessing/languages/fa/config/firstWordExceptions.js.map +1 -0
  477. package/build/languageProcessing/languages/fa/config/functionWords.js +35 -0
  478. package/build/languageProcessing/languages/fa/config/functionWords.js.map +1 -0
  479. package/build/languageProcessing/languages/fa/config/internal/participles.js +8 -0
  480. package/build/languageProcessing/languages/fa/config/internal/participles.js.map +1 -0
  481. package/build/languageProcessing/languages/fa/config/sentenceLength.js +4 -0
  482. package/build/languageProcessing/languages/fa/config/sentenceLength.js.map +1 -0
  483. package/build/languageProcessing/languages/fa/config/transitionWords.js +12 -0
  484. package/build/languageProcessing/languages/fa/config/transitionWords.js.map +1 -0
  485. package/build/languageProcessing/languages/fa/config/twoPartTransitionWords.js +8 -0
  486. package/build/languageProcessing/languages/fa/config/twoPartTransitionWords.js.map +1 -0
  487. package/build/languageProcessing/languages/fa/helpers/createBasicWordForms.js +93 -0
  488. package/build/languageProcessing/languages/fa/helpers/createBasicWordForms.js.map +1 -0
  489. package/build/languageProcessing/languages/fa/helpers/getStemmer.js +16 -0
  490. package/build/languageProcessing/languages/fa/helpers/getStemmer.js.map +1 -0
  491. package/build/languageProcessing/languages/fa/helpers/isPassiveSentence.js +16 -0
  492. package/build/languageProcessing/languages/fa/helpers/isPassiveSentence.js.map +1 -0
  493. package/build/languageProcessing/languages/fr/Researcher.js +47 -0
  494. package/build/languageProcessing/languages/fr/Researcher.js.map +1 -0
  495. package/build/languageProcessing/languages/fr/config/firstWordExceptions.js +14 -0
  496. package/build/languageProcessing/languages/fr/config/firstWordExceptions.js.map +1 -0
  497. package/build/languageProcessing/languages/fr/config/functionWords.js +138 -0
  498. package/build/languageProcessing/languages/fr/config/functionWords.js.map +1 -0
  499. package/build/languageProcessing/languages/fr/config/internal/exceptionsParticiplesActive.js +17 -0
  500. package/build/languageProcessing/languages/fr/config/internal/exceptionsParticiplesActive.js.map +1 -0
  501. package/build/languageProcessing/languages/fr/config/internal/passiveVoiceAuxiliaries.js +6 -0
  502. package/build/languageProcessing/languages/fr/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
  503. package/build/languageProcessing/languages/fr/config/internal/passiveVoiceIrregulars.js +22 -0
  504. package/build/languageProcessing/languages/fr/config/internal/passiveVoiceIrregulars.js.map +1 -0
  505. package/build/languageProcessing/languages/fr/config/stopWords.js +6 -0
  506. package/build/languageProcessing/languages/fr/config/stopWords.js.map +1 -0
  507. package/build/languageProcessing/languages/fr/config/syllables.json +1426 -0
  508. package/build/languageProcessing/languages/fr/config/transitionWords.js +7 -0
  509. package/build/languageProcessing/languages/fr/config/transitionWords.js.map +1 -0
  510. package/build/languageProcessing/languages/fr/config/twoPartTransitionWords.js +8 -0
  511. package/build/languageProcessing/languages/fr/config/twoPartTransitionWords.js.map +1 -0
  512. package/build/languageProcessing/languages/fr/config/wordComplexity.js +5 -0
  513. package/build/languageProcessing/languages/fr/config/wordComplexity.js.map +1 -0
  514. package/build/languageProcessing/languages/fr/helpers/calculateFleschReadingScore.js +17 -0
  515. package/build/languageProcessing/languages/fr/helpers/calculateFleschReadingScore.js.map +1 -0
  516. package/build/languageProcessing/languages/fr/helpers/checkIfWordIsComplex.js +66 -0
  517. package/build/languageProcessing/languages/fr/helpers/checkIfWordIsComplex.js.map +1 -0
  518. package/build/languageProcessing/languages/fr/helpers/getClauses.js +35 -0
  519. package/build/languageProcessing/languages/fr/helpers/getClauses.js.map +1 -0
  520. package/build/languageProcessing/languages/fr/helpers/getStemmer.js +22 -0
  521. package/build/languageProcessing/languages/fr/helpers/getStemmer.js.map +1 -0
  522. package/build/languageProcessing/languages/fr/helpers/internal/getParticiples.js +66 -0
  523. package/build/languageProcessing/languages/fr/helpers/internal/getParticiples.js.map +1 -0
  524. package/build/languageProcessing/languages/fr/helpers/internal/stem.js +537 -0
  525. package/build/languageProcessing/languages/fr/helpers/internal/stem.js.map +1 -0
  526. package/build/languageProcessing/languages/fr/values/Clause.js +84 -0
  527. package/build/languageProcessing/languages/fr/values/Clause.js.map +1 -0
  528. package/build/languageProcessing/languages/he/Researcher.js +51 -0
  529. package/build/languageProcessing/languages/he/Researcher.js.map +1 -0
  530. package/build/languageProcessing/languages/he/config/firstWordExceptions.js +12 -0
  531. package/build/languageProcessing/languages/he/config/firstWordExceptions.js.map +1 -0
  532. package/build/languageProcessing/languages/he/config/functionWords.js +497 -0
  533. package/build/languageProcessing/languages/he/config/functionWords.js.map +1 -0
  534. package/build/languageProcessing/languages/he/config/internal/regularRootsHufal.js +7 -0
  535. package/build/languageProcessing/languages/he/config/internal/regularRootsHufal.js.map +1 -0
  536. package/build/languageProcessing/languages/he/config/internal/regularRootsNifal.js +7 -0
  537. package/build/languageProcessing/languages/he/config/internal/regularRootsNifal.js.map +1 -0
  538. package/build/languageProcessing/languages/he/config/internal/regularRootsPual.js +7 -0
  539. package/build/languageProcessing/languages/he/config/internal/regularRootsPual.js.map +1 -0
  540. package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsHufal.js +9 -0
  541. package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsHufal.js.map +1 -0
  542. package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsNifal.js +9 -0
  543. package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsNifal.js.map +1 -0
  544. package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsPual.js +9 -0
  545. package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsPual.js.map +1 -0
  546. package/build/languageProcessing/languages/he/config/prefixedFunctionWords.js +3 -0
  547. package/build/languageProcessing/languages/he/config/prefixedFunctionWords.js.map +1 -0
  548. package/build/languageProcessing/languages/he/config/sentenceLength.js +4 -0
  549. package/build/languageProcessing/languages/he/config/sentenceLength.js.map +1 -0
  550. package/build/languageProcessing/languages/he/config/transitionWords.js +7 -0
  551. package/build/languageProcessing/languages/he/config/transitionWords.js.map +1 -0
  552. package/build/languageProcessing/languages/he/config/twoPartTransitionWords.js +8 -0
  553. package/build/languageProcessing/languages/he/config/twoPartTransitionWords.js.map +1 -0
  554. package/build/languageProcessing/languages/he/helpers/createBasicWordForms.js +35 -0
  555. package/build/languageProcessing/languages/he/helpers/createBasicWordForms.js.map +1 -0
  556. package/build/languageProcessing/languages/he/helpers/getStemmer.js +22 -0
  557. package/build/languageProcessing/languages/he/helpers/getStemmer.js.map +1 -0
  558. package/build/languageProcessing/languages/he/helpers/internal/stem.js +53 -0
  559. package/build/languageProcessing/languages/he/helpers/internal/stem.js.map +1 -0
  560. package/build/languageProcessing/languages/he/helpers/isPassiveSentence.js +116 -0
  561. package/build/languageProcessing/languages/he/helpers/isPassiveSentence.js.map +1 -0
  562. package/build/languageProcessing/languages/he/helpers/stem.js +53 -0
  563. package/build/languageProcessing/languages/he/helpers/stem.js.map +1 -0
  564. package/build/languageProcessing/languages/hu/Researcher.js +49 -0
  565. package/build/languageProcessing/languages/hu/Researcher.js.map +1 -0
  566. package/build/languageProcessing/languages/hu/config/firstWordExceptions.js +26 -0
  567. package/build/languageProcessing/languages/hu/config/firstWordExceptions.js.map +1 -0
  568. package/build/languageProcessing/languages/hu/config/functionWords.js +46 -0
  569. package/build/languageProcessing/languages/hu/config/functionWords.js.map +1 -0
  570. package/build/languageProcessing/languages/hu/config/internal/auxiliaries.js +14 -0
  571. package/build/languageProcessing/languages/hu/config/internal/auxiliaries.js.map +1 -0
  572. package/build/languageProcessing/languages/hu/config/internal/morphologicalPassiveAffixes.js +6 -0
  573. package/build/languageProcessing/languages/hu/config/internal/morphologicalPassiveAffixes.js.map +1 -0
  574. package/build/languageProcessing/languages/hu/config/internal/nonPassivesInVaAndVe.js +20 -0
  575. package/build/languageProcessing/languages/hu/config/internal/nonPassivesInVaAndVe.js.map +1 -0
  576. package/build/languageProcessing/languages/hu/config/internal/odikVerbs.js +19 -0
  577. package/build/languageProcessing/languages/hu/config/internal/odikVerbs.js.map +1 -0
  578. package/build/languageProcessing/languages/hu/config/internal/participles.js +20 -0
  579. package/build/languageProcessing/languages/hu/config/internal/participles.js.map +1 -0
  580. package/build/languageProcessing/languages/hu/config/stopWords.js +24 -0
  581. package/build/languageProcessing/languages/hu/config/stopWords.js.map +1 -0
  582. package/build/languageProcessing/languages/hu/config/transitionWords.js +7 -0
  583. package/build/languageProcessing/languages/hu/config/transitionWords.js.map +1 -0
  584. package/build/languageProcessing/languages/hu/config/twoPartTransitionWords.js +8 -0
  585. package/build/languageProcessing/languages/hu/config/twoPartTransitionWords.js.map +1 -0
  586. package/build/languageProcessing/languages/hu/helpers/getClauses.js +27 -0
  587. package/build/languageProcessing/languages/hu/helpers/getClauses.js.map +1 -0
  588. package/build/languageProcessing/languages/hu/helpers/getStemmer.js +22 -0
  589. package/build/languageProcessing/languages/hu/helpers/getStemmer.js.map +1 -0
  590. package/build/languageProcessing/languages/hu/helpers/internal/getParticiples.js +19 -0
  591. package/build/languageProcessing/languages/hu/helpers/internal/getParticiples.js.map +1 -0
  592. package/build/languageProcessing/languages/hu/helpers/internal/stem.js +384 -0
  593. package/build/languageProcessing/languages/hu/helpers/internal/stem.js.map +1 -0
  594. package/build/languageProcessing/languages/hu/helpers/isPassiveSentence.js +47 -0
  595. package/build/languageProcessing/languages/hu/helpers/isPassiveSentence.js.map +1 -0
  596. package/build/languageProcessing/languages/hu/values/Clause.js +41 -0
  597. package/build/languageProcessing/languages/hu/values/Clause.js.map +1 -0
  598. package/build/languageProcessing/languages/id/Researcher.js +47 -0
  599. package/build/languageProcessing/languages/id/Researcher.js.map +1 -0
  600. package/build/languageProcessing/languages/id/config/firstWordExceptions.js +12 -0
  601. package/build/languageProcessing/languages/id/config/firstWordExceptions.js.map +1 -0
  602. package/build/languageProcessing/languages/id/config/functionWords.js +101 -0
  603. package/build/languageProcessing/languages/id/config/functionWords.js.map +1 -0
  604. package/build/languageProcessing/languages/id/config/internal/nonPassiveVerbsStartingDi.js +7 -0
  605. package/build/languageProcessing/languages/id/config/internal/nonPassiveVerbsStartingDi.js.map +1 -0
  606. package/build/languageProcessing/languages/id/config/transitionWords.js +24 -0
  607. package/build/languageProcessing/languages/id/config/transitionWords.js.map +1 -0
  608. package/build/languageProcessing/languages/id/config/twoPartTransitionWords.js +9 -0
  609. package/build/languageProcessing/languages/id/config/twoPartTransitionWords.js.map +1 -0
  610. package/build/languageProcessing/languages/id/helpers/getStemmer.js +22 -0
  611. package/build/languageProcessing/languages/id/helpers/getStemmer.js.map +1 -0
  612. package/build/languageProcessing/languages/id/helpers/internal/stem.js +389 -0
  613. package/build/languageProcessing/languages/id/helpers/internal/stem.js.map +1 -0
  614. package/build/languageProcessing/languages/id/helpers/internal/stemHelpers.js +78 -0
  615. package/build/languageProcessing/languages/id/helpers/internal/stemHelpers.js.map +1 -0
  616. package/build/languageProcessing/languages/id/helpers/isPassiveSentence.js +40 -0
  617. package/build/languageProcessing/languages/id/helpers/isPassiveSentence.js.map +1 -0
  618. package/build/languageProcessing/languages/id/helpers/splitIntoTokensCustom.js +47 -0
  619. package/build/languageProcessing/languages/id/helpers/splitIntoTokensCustom.js.map +1 -0
  620. package/build/languageProcessing/languages/it/Researcher.js +49 -0
  621. package/build/languageProcessing/languages/it/Researcher.js.map +1 -0
  622. package/build/languageProcessing/languages/it/config/firstWordExceptions.js +14 -0
  623. package/build/languageProcessing/languages/it/config/firstWordExceptions.js.map +1 -0
  624. package/build/languageProcessing/languages/it/config/functionWords.js +135 -0
  625. package/build/languageProcessing/languages/it/config/functionWords.js.map +1 -0
  626. package/build/languageProcessing/languages/it/config/internal/passiveVoiceAuxiliaries.js +6 -0
  627. package/build/languageProcessing/languages/it/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
  628. package/build/languageProcessing/languages/it/config/internal/passiveVoiceParticiples.js +7 -0
  629. package/build/languageProcessing/languages/it/config/internal/passiveVoiceParticiples.js.map +1 -0
  630. package/build/languageProcessing/languages/it/config/sentenceLength.js +4 -0
  631. package/build/languageProcessing/languages/it/config/sentenceLength.js.map +1 -0
  632. package/build/languageProcessing/languages/it/config/stopWords.js +6 -0
  633. package/build/languageProcessing/languages/it/config/stopWords.js.map +1 -0
  634. package/build/languageProcessing/languages/it/config/syllables.json +573 -0
  635. package/build/languageProcessing/languages/it/config/transitionWords.js +7 -0
  636. package/build/languageProcessing/languages/it/config/transitionWords.js.map +1 -0
  637. package/build/languageProcessing/languages/it/config/twoPartTransitionWords.js +6 -0
  638. package/build/languageProcessing/languages/it/config/twoPartTransitionWords.js.map +1 -0
  639. package/build/languageProcessing/languages/it/helpers/calculateFleschReadingScore.js +17 -0
  640. package/build/languageProcessing/languages/it/helpers/calculateFleschReadingScore.js.map +1 -0
  641. package/build/languageProcessing/languages/it/helpers/getClauses.js +33 -0
  642. package/build/languageProcessing/languages/it/helpers/getClauses.js.map +1 -0
  643. package/build/languageProcessing/languages/it/helpers/getStemmer.js +22 -0
  644. package/build/languageProcessing/languages/it/helpers/getStemmer.js.map +1 -0
  645. package/build/languageProcessing/languages/it/helpers/internal/getParticiples.js +36 -0
  646. package/build/languageProcessing/languages/it/helpers/internal/getParticiples.js.map +1 -0
  647. package/build/languageProcessing/languages/it/helpers/internal/stem.js +402 -0
  648. package/build/languageProcessing/languages/it/helpers/internal/stem.js.map +1 -0
  649. package/build/languageProcessing/languages/it/values/Clause.js +44 -0
  650. package/build/languageProcessing/languages/it/values/Clause.js.map +1 -0
  651. package/build/languageProcessing/languages/ja/Researcher.js +86 -0
  652. package/build/languageProcessing/languages/ja/Researcher.js.map +1 -0
  653. package/build/languageProcessing/languages/ja/config/assessmentApplicabilityCharacterCount.js +5 -0
  654. package/build/languageProcessing/languages/ja/config/assessmentApplicabilityCharacterCount.js.map +1 -0
  655. package/build/languageProcessing/languages/ja/config/firstWordExceptions.js +8 -0
  656. package/build/languageProcessing/languages/ja/config/firstWordExceptions.js.map +1 -0
  657. package/build/languageProcessing/languages/ja/config/functionWords.js +2 -0
  658. package/build/languageProcessing/languages/ja/config/functionWords.js.map +1 -0
  659. package/build/languageProcessing/languages/ja/config/keyphraseLength.js +17 -0
  660. package/build/languageProcessing/languages/ja/config/keyphraseLength.js.map +1 -0
  661. package/build/languageProcessing/languages/ja/config/metaDescriptionLength.js +5 -0
  662. package/build/languageProcessing/languages/ja/config/metaDescriptionLength.js.map +1 -0
  663. package/build/languageProcessing/languages/ja/config/paragraphLength.js +11 -0
  664. package/build/languageProcessing/languages/ja/config/paragraphLength.js.map +1 -0
  665. package/build/languageProcessing/languages/ja/config/sentenceLength.js +5 -0
  666. package/build/languageProcessing/languages/ja/config/sentenceLength.js.map +1 -0
  667. package/build/languageProcessing/languages/ja/config/subheadingsTooLong.js +19 -0
  668. package/build/languageProcessing/languages/ja/config/subheadingsTooLong.js.map +1 -0
  669. package/build/languageProcessing/languages/ja/config/textLength.js +48 -0
  670. package/build/languageProcessing/languages/ja/config/textLength.js.map +1 -0
  671. package/build/languageProcessing/languages/ja/config/topicLength.js +6 -0
  672. package/build/languageProcessing/languages/ja/config/topicLength.js.map +1 -0
  673. package/build/languageProcessing/languages/ja/config/transitionWords.js +4 -0
  674. package/build/languageProcessing/languages/ja/config/transitionWords.js.map +1 -0
  675. package/build/languageProcessing/languages/ja/customResearches/findKeyphraseInSEOTitle.js +96 -0
  676. package/build/languageProcessing/languages/ja/customResearches/findKeyphraseInSEOTitle.js.map +1 -0
  677. package/build/languageProcessing/languages/ja/customResearches/getKeyphraseLength.js +19 -0
  678. package/build/languageProcessing/languages/ja/customResearches/getKeyphraseLength.js.map +1 -0
  679. package/build/languageProcessing/languages/ja/customResearches/getWordForms.js +51 -0
  680. package/build/languageProcessing/languages/ja/customResearches/getWordForms.js.map +1 -0
  681. package/build/languageProcessing/languages/ja/customResearches/textLength.js +25 -0
  682. package/build/languageProcessing/languages/ja/customResearches/textLength.js.map +1 -0
  683. package/build/languageProcessing/languages/ja/helpers/countCharacters.js +21 -0
  684. package/build/languageProcessing/languages/ja/helpers/countCharacters.js.map +1 -0
  685. package/build/languageProcessing/languages/ja/helpers/customGetStemmer.js +22 -0
  686. package/build/languageProcessing/languages/ja/helpers/customGetStemmer.js.map +1 -0
  687. package/build/languageProcessing/languages/ja/helpers/getContentWords.js +21 -0
  688. package/build/languageProcessing/languages/ja/helpers/getContentWords.js.map +1 -0
  689. package/build/languageProcessing/languages/ja/helpers/getWords.js +31 -0
  690. package/build/languageProcessing/languages/ja/helpers/getWords.js.map +1 -0
  691. package/build/languageProcessing/languages/ja/helpers/internal/SentenceTokenizer.js +92 -0
  692. package/build/languageProcessing/languages/ja/helpers/internal/SentenceTokenizer.js.map +1 -0
  693. package/build/languageProcessing/languages/ja/helpers/internal/createWordForms.js +65 -0
  694. package/build/languageProcessing/languages/ja/helpers/internal/createWordForms.js.map +1 -0
  695. package/build/languageProcessing/languages/ja/helpers/internal/determineStem.js +17 -0
  696. package/build/languageProcessing/languages/ja/helpers/internal/determineStem.js.map +1 -0
  697. package/build/languageProcessing/languages/ja/helpers/matchTextWithWord.js +52 -0
  698. package/build/languageProcessing/languages/ja/helpers/matchTextWithWord.js.map +1 -0
  699. package/build/languageProcessing/languages/ja/helpers/matchTransitionWords.js +23 -0
  700. package/build/languageProcessing/languages/ja/helpers/matchTransitionWords.js.map +1 -0
  701. package/build/languageProcessing/languages/ja/helpers/memoizedSentenceTokenizer.js +31 -0
  702. package/build/languageProcessing/languages/ja/helpers/memoizedSentenceTokenizer.js.map +1 -0
  703. package/build/languageProcessing/languages/ja/helpers/splitIntoTokensCustom.js +21 -0
  704. package/build/languageProcessing/languages/ja/helpers/splitIntoTokensCustom.js.map +1 -0
  705. package/build/languageProcessing/languages/ja/helpers/wordsCharacterCount.js +13 -0
  706. package/build/languageProcessing/languages/ja/helpers/wordsCharacterCount.js.map +1 -0
  707. package/build/languageProcessing/languages/nb/Researcher.js +46 -0
  708. package/build/languageProcessing/languages/nb/Researcher.js.map +1 -0
  709. package/build/languageProcessing/languages/nb/config/firstWordExceptions.js +12 -0
  710. package/build/languageProcessing/languages/nb/config/firstWordExceptions.js.map +1 -0
  711. package/build/languageProcessing/languages/nb/config/functionWords.js +48 -0
  712. package/build/languageProcessing/languages/nb/config/functionWords.js.map +1 -0
  713. package/build/languageProcessing/languages/nb/config/internal/participles.js +7 -0
  714. package/build/languageProcessing/languages/nb/config/internal/participles.js.map +1 -0
  715. package/build/languageProcessing/languages/nb/config/internal/passiveVoiceAuxiliaries.js +6 -0
  716. package/build/languageProcessing/languages/nb/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
  717. package/build/languageProcessing/languages/nb/config/stopWords.js +7 -0
  718. package/build/languageProcessing/languages/nb/config/stopWords.js.map +1 -0
  719. package/build/languageProcessing/languages/nb/config/transitionWords.js +7 -0
  720. package/build/languageProcessing/languages/nb/config/transitionWords.js.map +1 -0
  721. package/build/languageProcessing/languages/nb/config/twoPartTransitionWords.js +8 -0
  722. package/build/languageProcessing/languages/nb/config/twoPartTransitionWords.js.map +1 -0
  723. package/build/languageProcessing/languages/nb/helpers/getClauses.js +30 -0
  724. package/build/languageProcessing/languages/nb/helpers/getClauses.js.map +1 -0
  725. package/build/languageProcessing/languages/nb/helpers/getStemmer.js +22 -0
  726. package/build/languageProcessing/languages/nb/helpers/getStemmer.js.map +1 -0
  727. package/build/languageProcessing/languages/nb/helpers/internal/getParticiples.js +25 -0
  728. package/build/languageProcessing/languages/nb/helpers/internal/getParticiples.js.map +1 -0
  729. package/build/languageProcessing/languages/nb/helpers/internal/stem.js +129 -0
  730. package/build/languageProcessing/languages/nb/helpers/internal/stem.js.map +1 -0
  731. package/build/languageProcessing/languages/nb/values/Clause.js +43 -0
  732. package/build/languageProcessing/languages/nb/values/Clause.js.map +1 -0
  733. package/build/languageProcessing/languages/nl/Researcher.js +49 -0
  734. package/build/languageProcessing/languages/nl/Researcher.js.map +1 -0
  735. package/build/languageProcessing/languages/nl/config/firstWordExceptions.js +14 -0
  736. package/build/languageProcessing/languages/nl/config/firstWordExceptions.js.map +1 -0
  737. package/build/languageProcessing/languages/nl/config/functionWords.js +96 -0
  738. package/build/languageProcessing/languages/nl/config/functionWords.js.map +1 -0
  739. package/build/languageProcessing/languages/nl/config/internal/nonParticiples.js +6 -0
  740. package/build/languageProcessing/languages/nl/config/internal/nonParticiples.js.map +1 -0
  741. package/build/languageProcessing/languages/nl/config/internal/passiveVoiceAuxiliaries.js +6 -0
  742. package/build/languageProcessing/languages/nl/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
  743. package/build/languageProcessing/languages/nl/config/internal/passiveVoiceIrregulars.js +7 -0
  744. package/build/languageProcessing/languages/nl/config/internal/passiveVoiceIrregulars.js.map +1 -0
  745. package/build/languageProcessing/languages/nl/config/keyphraseLength.js +11 -0
  746. package/build/languageProcessing/languages/nl/config/keyphraseLength.js.map +1 -0
  747. package/build/languageProcessing/languages/nl/config/stopWords.js +6 -0
  748. package/build/languageProcessing/languages/nl/config/stopWords.js.map +1 -0
  749. package/build/languageProcessing/languages/nl/config/syllables.json +343 -0
  750. package/build/languageProcessing/languages/nl/config/transitionWords.js +5 -0
  751. package/build/languageProcessing/languages/nl/config/transitionWords.js.map +1 -0
  752. package/build/languageProcessing/languages/nl/config/twoPartTransitionWords.js +6 -0
  753. package/build/languageProcessing/languages/nl/config/twoPartTransitionWords.js.map +1 -0
  754. package/build/languageProcessing/languages/nl/helpers/calculateFleschReadingScore.js +17 -0
  755. package/build/languageProcessing/languages/nl/helpers/calculateFleschReadingScore.js.map +1 -0
  756. package/build/languageProcessing/languages/nl/helpers/getClauses.js +27 -0
  757. package/build/languageProcessing/languages/nl/helpers/getClauses.js.map +1 -0
  758. package/build/languageProcessing/languages/nl/helpers/getStemmer.js +22 -0
  759. package/build/languageProcessing/languages/nl/helpers/getStemmer.js.map +1 -0
  760. package/build/languageProcessing/languages/nl/helpers/internal/checkExceptionsWithFullForms.js +118 -0
  761. package/build/languageProcessing/languages/nl/helpers/internal/checkExceptionsWithFullForms.js.map +1 -0
  762. package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemRegularParticiple.js +254 -0
  763. package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemRegularParticiple.js.map +1 -0
  764. package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemSuffixes.js +152 -0
  765. package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemSuffixes.js.map +1 -0
  766. package/build/languageProcessing/languages/nl/helpers/internal/determineStem.js +114 -0
  767. package/build/languageProcessing/languages/nl/helpers/internal/determineStem.js.map +1 -0
  768. package/build/languageProcessing/languages/nl/helpers/internal/getParticiples.js +21 -0
  769. package/build/languageProcessing/languages/nl/helpers/internal/getParticiples.js.map +1 -0
  770. package/build/languageProcessing/languages/nl/helpers/internal/getStemWordsWithTAndDEnding.js +147 -0
  771. package/build/languageProcessing/languages/nl/helpers/internal/getStemWordsWithTAndDEnding.js.map +1 -0
  772. package/build/languageProcessing/languages/nl/helpers/internal/stem.js +125 -0
  773. package/build/languageProcessing/languages/nl/helpers/internal/stem.js.map +1 -0
  774. package/build/languageProcessing/languages/nl/helpers/internal/stemModificationHelpers.js +87 -0
  775. package/build/languageProcessing/languages/nl/helpers/internal/stemModificationHelpers.js.map +1 -0
  776. package/build/languageProcessing/languages/nl/helpers/internal/stemTOrDFromEndOfWord.js +53 -0
  777. package/build/languageProcessing/languages/nl/helpers/internal/stemTOrDFromEndOfWord.js.map +1 -0
  778. package/build/languageProcessing/languages/nl/values/Clause.js +57 -0
  779. package/build/languageProcessing/languages/nl/values/Clause.js.map +1 -0
  780. package/build/languageProcessing/languages/pl/Researcher.js +48 -0
  781. package/build/languageProcessing/languages/pl/Researcher.js.map +1 -0
  782. package/build/languageProcessing/languages/pl/config/firstWordExceptions.js +10 -0
  783. package/build/languageProcessing/languages/pl/config/firstWordExceptions.js.map +1 -0
  784. package/build/languageProcessing/languages/pl/config/functionWords.js +71 -0
  785. package/build/languageProcessing/languages/pl/config/functionWords.js.map +1 -0
  786. package/build/languageProcessing/languages/pl/config/internal/auxiliaries.js +6 -0
  787. package/build/languageProcessing/languages/pl/config/internal/auxiliaries.js.map +1 -0
  788. package/build/languageProcessing/languages/pl/config/internal/participles.js +7 -0
  789. package/build/languageProcessing/languages/pl/config/internal/participles.js.map +1 -0
  790. package/build/languageProcessing/languages/pl/config/sentenceLength.js +11 -0
  791. package/build/languageProcessing/languages/pl/config/sentenceLength.js.map +1 -0
  792. package/build/languageProcessing/languages/pl/config/stopWords.js +6 -0
  793. package/build/languageProcessing/languages/pl/config/stopWords.js.map +1 -0
  794. package/build/languageProcessing/languages/pl/config/transitionWords.js +7 -0
  795. package/build/languageProcessing/languages/pl/config/transitionWords.js.map +1 -0
  796. package/build/languageProcessing/languages/pl/config/twoPartTransitionWords.js +8 -0
  797. package/build/languageProcessing/languages/pl/config/twoPartTransitionWords.js.map +1 -0
  798. package/build/languageProcessing/languages/pl/helpers/getClauses.js +27 -0
  799. package/build/languageProcessing/languages/pl/helpers/getClauses.js.map +1 -0
  800. package/build/languageProcessing/languages/pl/helpers/getStemmer.js +22 -0
  801. package/build/languageProcessing/languages/pl/helpers/getStemmer.js.map +1 -0
  802. package/build/languageProcessing/languages/pl/helpers/internal/getParticiples.js +19 -0
  803. package/build/languageProcessing/languages/pl/helpers/internal/getParticiples.js.map +1 -0
  804. package/build/languageProcessing/languages/pl/helpers/internal/stem.js +152 -0
  805. package/build/languageProcessing/languages/pl/helpers/internal/stem.js.map +1 -0
  806. package/build/languageProcessing/languages/pl/values/Clause.js +45 -0
  807. package/build/languageProcessing/languages/pl/values/Clause.js.map +1 -0
  808. package/build/languageProcessing/languages/pt/Researcher.js +49 -0
  809. package/build/languageProcessing/languages/pt/Researcher.js.map +1 -0
  810. package/build/languageProcessing/languages/pt/config/firstWordExceptions.js +14 -0
  811. package/build/languageProcessing/languages/pt/config/firstWordExceptions.js.map +1 -0
  812. package/build/languageProcessing/languages/pt/config/functionWords.js +92 -0
  813. package/build/languageProcessing/languages/pt/config/functionWords.js.map +1 -0
  814. package/build/languageProcessing/languages/pt/config/internal/passiveVoiceAuxiliaries.js +6 -0
  815. package/build/languageProcessing/languages/pt/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
  816. package/build/languageProcessing/languages/pt/config/internal/passiveVoiceParticiples.js +7 -0
  817. package/build/languageProcessing/languages/pt/config/internal/passiveVoiceParticiples.js.map +1 -0
  818. package/build/languageProcessing/languages/pt/config/sentenceLength.js +4 -0
  819. package/build/languageProcessing/languages/pt/config/sentenceLength.js.map +1 -0
  820. package/build/languageProcessing/languages/pt/config/stopWords.js +6 -0
  821. package/build/languageProcessing/languages/pt/config/stopWords.js.map +1 -0
  822. package/build/languageProcessing/languages/pt/config/syllables.json +38 -0
  823. package/build/languageProcessing/languages/pt/config/transitionWords.js +5 -0
  824. package/build/languageProcessing/languages/pt/config/transitionWords.js.map +1 -0
  825. package/build/languageProcessing/languages/pt/config/twoPartTransitionWords.js +6 -0
  826. package/build/languageProcessing/languages/pt/config/twoPartTransitionWords.js.map +1 -0
  827. package/build/languageProcessing/languages/pt/helpers/calculateFleschReadingScore.js +17 -0
  828. package/build/languageProcessing/languages/pt/helpers/calculateFleschReadingScore.js.map +1 -0
  829. package/build/languageProcessing/languages/pt/helpers/getClauses.js +31 -0
  830. package/build/languageProcessing/languages/pt/helpers/getClauses.js.map +1 -0
  831. package/build/languageProcessing/languages/pt/helpers/getStemmer.js +22 -0
  832. package/build/languageProcessing/languages/pt/helpers/getStemmer.js.map +1 -0
  833. package/build/languageProcessing/languages/pt/helpers/internal/getParticiples.js +37 -0
  834. package/build/languageProcessing/languages/pt/helpers/internal/getParticiples.js.map +1 -0
  835. package/build/languageProcessing/languages/pt/helpers/internal/stem.js +277 -0
  836. package/build/languageProcessing/languages/pt/helpers/internal/stem.js.map +1 -0
  837. package/build/languageProcessing/languages/pt/values/Clause.js +43 -0
  838. package/build/languageProcessing/languages/pt/values/Clause.js.map +1 -0
  839. package/build/languageProcessing/languages/ru/Researcher.js +49 -0
  840. package/build/languageProcessing/languages/ru/Researcher.js.map +1 -0
  841. package/build/languageProcessing/languages/ru/config/firstWordExceptions.js +10 -0
  842. package/build/languageProcessing/languages/ru/config/firstWordExceptions.js.map +1 -0
  843. package/build/languageProcessing/languages/ru/config/fleschReadingEaseScores.js +21 -0
  844. package/build/languageProcessing/languages/ru/config/fleschReadingEaseScores.js.map +1 -0
  845. package/build/languageProcessing/languages/ru/config/functionWords.js +85 -0
  846. package/build/languageProcessing/languages/ru/config/functionWords.js.map +1 -0
  847. package/build/languageProcessing/languages/ru/config/internal/participlesShortenedList.js +21 -0
  848. package/build/languageProcessing/languages/ru/config/internal/participlesShortenedList.js.map +1 -0
  849. package/build/languageProcessing/languages/ru/config/internal/passiveVoiceParticiples.js +18 -0
  850. package/build/languageProcessing/languages/ru/config/internal/passiveVoiceParticiples.js.map +1 -0
  851. package/build/languageProcessing/languages/ru/config/sentenceLength.js +4 -0
  852. package/build/languageProcessing/languages/ru/config/sentenceLength.js.map +1 -0
  853. package/build/languageProcessing/languages/ru/config/syllables.json +19 -0
  854. package/build/languageProcessing/languages/ru/config/transitionWords.js +7 -0
  855. package/build/languageProcessing/languages/ru/config/transitionWords.js.map +1 -0
  856. package/build/languageProcessing/languages/ru/config/twoPartTransitionWords.js +8 -0
  857. package/build/languageProcessing/languages/ru/config/twoPartTransitionWords.js.map +1 -0
  858. package/build/languageProcessing/languages/ru/helpers/calculateFleschReadingScore.js +17 -0
  859. package/build/languageProcessing/languages/ru/helpers/calculateFleschReadingScore.js.map +1 -0
  860. package/build/languageProcessing/languages/ru/helpers/getStemmer.js +22 -0
  861. package/build/languageProcessing/languages/ru/helpers/getStemmer.js.map +1 -0
  862. package/build/languageProcessing/languages/ru/helpers/internal/stem.js +265 -0
  863. package/build/languageProcessing/languages/ru/helpers/internal/stem.js.map +1 -0
  864. package/build/languageProcessing/languages/ru/helpers/isPassiveSentence.js +16 -0
  865. package/build/languageProcessing/languages/ru/helpers/isPassiveSentence.js.map +1 -0
  866. package/build/languageProcessing/languages/sk/Researcher.js +47 -0
  867. package/build/languageProcessing/languages/sk/Researcher.js.map +1 -0
  868. package/build/languageProcessing/languages/sk/config/firstWordExceptions.js +12 -0
  869. package/build/languageProcessing/languages/sk/config/firstWordExceptions.js.map +1 -0
  870. package/build/languageProcessing/languages/sk/config/functionWords.js +12 -0
  871. package/build/languageProcessing/languages/sk/config/functionWords.js.map +1 -0
  872. package/build/languageProcessing/languages/sk/config/internal/nonPassives.js +8 -0
  873. package/build/languageProcessing/languages/sk/config/internal/nonPassives.js.map +1 -0
  874. package/build/languageProcessing/languages/sk/config/internal/passiveVoiceAuxiliaries.js +4 -0
  875. package/build/languageProcessing/languages/sk/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
  876. package/build/languageProcessing/languages/sk/config/stopWords.js +7 -0
  877. package/build/languageProcessing/languages/sk/config/stopWords.js.map +1 -0
  878. package/build/languageProcessing/languages/sk/config/transitionWords.js +7 -0
  879. package/build/languageProcessing/languages/sk/config/transitionWords.js.map +1 -0
  880. package/build/languageProcessing/languages/sk/config/twoPartTransitionWords.js +8 -0
  881. package/build/languageProcessing/languages/sk/config/twoPartTransitionWords.js.map +1 -0
  882. package/build/languageProcessing/languages/sk/helpers/getClauses.js +28 -0
  883. package/build/languageProcessing/languages/sk/helpers/getClauses.js.map +1 -0
  884. package/build/languageProcessing/languages/sk/helpers/getStemmer.js +22 -0
  885. package/build/languageProcessing/languages/sk/helpers/getStemmer.js.map +1 -0
  886. package/build/languageProcessing/languages/sk/helpers/internal/getParticiples.js +18 -0
  887. package/build/languageProcessing/languages/sk/helpers/internal/getParticiples.js.map +1 -0
  888. package/build/languageProcessing/languages/sk/helpers/internal/stem.js +316 -0
  889. package/build/languageProcessing/languages/sk/helpers/internal/stem.js.map +1 -0
  890. package/build/languageProcessing/languages/sk/values/Clause.js +41 -0
  891. package/build/languageProcessing/languages/sk/values/Clause.js.map +1 -0
  892. package/build/languageProcessing/languages/sv/Researcher.js +46 -0
  893. package/build/languageProcessing/languages/sv/Researcher.js.map +1 -0
  894. package/build/languageProcessing/languages/sv/config/firstWordExceptions.js +15 -0
  895. package/build/languageProcessing/languages/sv/config/firstWordExceptions.js.map +1 -0
  896. package/build/languageProcessing/languages/sv/config/functionWords.js +68 -0
  897. package/build/languageProcessing/languages/sv/config/functionWords.js.map +1 -0
  898. package/build/languageProcessing/languages/sv/config/internal/passiveVerbs.js +7 -0
  899. package/build/languageProcessing/languages/sv/config/internal/passiveVerbs.js.map +1 -0
  900. package/build/languageProcessing/languages/sv/config/keyphraseLength.js +11 -0
  901. package/build/languageProcessing/languages/sv/config/keyphraseLength.js.map +1 -0
  902. package/build/languageProcessing/languages/sv/config/transitionWords.js +7 -0
  903. package/build/languageProcessing/languages/sv/config/transitionWords.js.map +1 -0
  904. package/build/languageProcessing/languages/sv/config/twoPartTransitionWords.js +8 -0
  905. package/build/languageProcessing/languages/sv/config/twoPartTransitionWords.js.map +1 -0
  906. package/build/languageProcessing/languages/sv/helpers/getStemmer.js +22 -0
  907. package/build/languageProcessing/languages/sv/helpers/getStemmer.js.map +1 -0
  908. package/build/languageProcessing/languages/sv/helpers/internal/stem.js +153 -0
  909. package/build/languageProcessing/languages/sv/helpers/internal/stem.js.map +1 -0
  910. package/build/languageProcessing/languages/sv/helpers/isPassiveSentence.js +16 -0
  911. package/build/languageProcessing/languages/sv/helpers/isPassiveSentence.js.map +1 -0
  912. package/build/languageProcessing/languages/tr/Researcher.js +44 -0
  913. package/build/languageProcessing/languages/tr/Researcher.js.map +1 -0
  914. package/build/languageProcessing/languages/tr/config/firstWordExceptions.js +12 -0
  915. package/build/languageProcessing/languages/tr/config/firstWordExceptions.js.map +1 -0
  916. package/build/languageProcessing/languages/tr/config/functionWords.js +45 -0
  917. package/build/languageProcessing/languages/tr/config/functionWords.js.map +1 -0
  918. package/build/languageProcessing/languages/tr/config/internal/nonPassiveExceptions.js +8 -0
  919. package/build/languageProcessing/languages/tr/config/internal/nonPassiveExceptions.js.map +1 -0
  920. package/build/languageProcessing/languages/tr/config/internal/passiveEndings.js +7 -0
  921. package/build/languageProcessing/languages/tr/config/internal/passiveEndings.js.map +1 -0
  922. package/build/languageProcessing/languages/tr/config/sentenceLength.js +8 -0
  923. package/build/languageProcessing/languages/tr/config/sentenceLength.js.map +1 -0
  924. package/build/languageProcessing/languages/tr/config/transitionWords.js +7 -0
  925. package/build/languageProcessing/languages/tr/config/transitionWords.js.map +1 -0
  926. package/build/languageProcessing/languages/tr/config/twoPartTransitionWords.js +8 -0
  927. package/build/languageProcessing/languages/tr/config/twoPartTransitionWords.js.map +1 -0
  928. package/build/languageProcessing/languages/tr/helpers/getStemmer.js +22 -0
  929. package/build/languageProcessing/languages/tr/helpers/getStemmer.js.map +1 -0
  930. package/build/languageProcessing/languages/tr/helpers/internal/stem.js +19 -0
  931. package/build/languageProcessing/languages/tr/helpers/internal/stem.js.map +1 -0
  932. package/build/languageProcessing/languages/tr/helpers/isPassiveSentence.js +40 -0
  933. package/build/languageProcessing/languages/tr/helpers/isPassiveSentence.js.map +1 -0
  934. package/build/languageProcessing/researches/altTagCount.js +66 -0
  935. package/build/languageProcessing/researches/altTagCount.js.map +1 -0
  936. package/build/languageProcessing/researches/checkRelatedKeywords.js +71 -0
  937. package/build/languageProcessing/researches/checkRelatedKeywords.js.map +1 -0
  938. package/build/languageProcessing/researches/countSentencesFromText.js +20 -0
  939. package/build/languageProcessing/researches/countSentencesFromText.js.map +1 -0
  940. package/build/languageProcessing/researches/findKeyphraseInSEOTitle.js +250 -0
  941. package/build/languageProcessing/researches/findKeyphraseInSEOTitle.js.map +1 -0
  942. package/build/languageProcessing/researches/findKeywordInFirstParagraph.js +74 -0
  943. package/build/languageProcessing/researches/findKeywordInFirstParagraph.js.map +1 -0
  944. package/build/languageProcessing/researches/findTransitionWords.js +112 -0
  945. package/build/languageProcessing/researches/findTransitionWords.js.map +1 -0
  946. package/build/languageProcessing/researches/functionWordsInKeyphrase.js +42 -0
  947. package/build/languageProcessing/researches/functionWordsInKeyphrase.js.map +1 -0
  948. package/build/languageProcessing/researches/getAnchorsWithKeyphrase.js +215 -0
  949. package/build/languageProcessing/researches/getAnchorsWithKeyphrase.js.map +1 -0
  950. package/build/languageProcessing/researches/getFleschReadingScore.js +145 -0
  951. package/build/languageProcessing/researches/getFleschReadingScore.js.map +1 -0
  952. package/build/languageProcessing/researches/getKeywordDensity.js +42 -0
  953. package/build/languageProcessing/researches/getKeywordDensity.js.map +1 -0
  954. package/build/languageProcessing/researches/getLinkStatistics.js +50 -0
  955. package/build/languageProcessing/researches/getLinkStatistics.js.map +1 -0
  956. package/build/languageProcessing/researches/getLinks.js +17 -0
  957. package/build/languageProcessing/researches/getLinks.js.map +1 -0
  958. package/build/languageProcessing/researches/getLongCenterAlignedTexts.js +36 -0
  959. package/build/languageProcessing/researches/getLongCenterAlignedTexts.js.map +1 -0
  960. package/build/languageProcessing/researches/getParagraphLength.js +43 -0
  961. package/build/languageProcessing/researches/getParagraphLength.js.map +1 -0
  962. package/build/languageProcessing/researches/getParagraphs.js +18 -0
  963. package/build/languageProcessing/researches/getParagraphs.js.map +1 -0
  964. package/build/languageProcessing/researches/getPassiveVoiceResult.js +118 -0
  965. package/build/languageProcessing/researches/getPassiveVoiceResult.js.map +1 -0
  966. package/build/languageProcessing/researches/getProminentWordsForInsights.js +39 -0
  967. package/build/languageProcessing/researches/getProminentWordsForInsights.js.map +1 -0
  968. package/build/languageProcessing/researches/getProminentWordsForInternalLinking.js +97 -0
  969. package/build/languageProcessing/researches/getProminentWordsForInternalLinking.js.map +1 -0
  970. package/build/languageProcessing/researches/getSentenceBeginnings.js +116 -0
  971. package/build/languageProcessing/researches/getSentenceBeginnings.js.map +1 -0
  972. package/build/languageProcessing/researches/getSubheadingTextLengths.js +54 -0
  973. package/build/languageProcessing/researches/getSubheadingTextLengths.js.map +1 -0
  974. package/build/languageProcessing/researches/getWordForms.js +177 -0
  975. package/build/languageProcessing/researches/getWordForms.js.map +1 -0
  976. package/build/languageProcessing/researches/h1s.js +11 -0
  977. package/build/languageProcessing/researches/h1s.js.map +1 -0
  978. package/build/languageProcessing/researches/imageCount.js +16 -0
  979. package/build/languageProcessing/researches/imageCount.js.map +1 -0
  980. package/build/languageProcessing/researches/index.js +5 -0
  981. package/build/languageProcessing/researches/index.js.map +1 -0
  982. package/build/languageProcessing/researches/keyphraseDistribution.js +223 -0
  983. package/build/languageProcessing/researches/keyphraseDistribution.js.map +1 -0
  984. package/build/languageProcessing/researches/keyphraseLength.js +17 -0
  985. package/build/languageProcessing/researches/keyphraseLength.js.map +1 -0
  986. package/build/languageProcessing/researches/keywordCount.js +127 -0
  987. package/build/languageProcessing/researches/keywordCount.js.map +1 -0
  988. package/build/languageProcessing/researches/keywordCountInUrl.js +50 -0
  989. package/build/languageProcessing/researches/keywordCountInUrl.js.map +1 -0
  990. package/build/languageProcessing/researches/matchKeywordInSubheadings.js +62 -0
  991. package/build/languageProcessing/researches/matchKeywordInSubheadings.js.map +1 -0
  992. package/build/languageProcessing/researches/metaDescriptionKeyword.js +72 -0
  993. package/build/languageProcessing/researches/metaDescriptionKeyword.js.map +1 -0
  994. package/build/languageProcessing/researches/metaDescriptionLength.js +13 -0
  995. package/build/languageProcessing/researches/metaDescriptionLength.js.map +1 -0
  996. package/build/languageProcessing/researches/pageTitleWidth.js +12 -0
  997. package/build/languageProcessing/researches/pageTitleWidth.js.map +1 -0
  998. package/build/languageProcessing/researches/readingTime.js +78 -0
  999. package/build/languageProcessing/researches/readingTime.js.map +1 -0
  1000. package/build/languageProcessing/researches/sentences.js +20 -0
  1001. package/build/languageProcessing/researches/sentences.js.map +1 -0
  1002. package/build/languageProcessing/researches/videoCount.js +33 -0
  1003. package/build/languageProcessing/researches/videoCount.js.map +1 -0
  1004. package/build/languageProcessing/researches/wordComplexity.js +122 -0
  1005. package/build/languageProcessing/researches/wordComplexity.js.map +1 -0
  1006. package/build/languageProcessing/researches/wordCountInText.js +30 -0
  1007. package/build/languageProcessing/researches/wordCountInText.js.map +1 -0
  1008. package/build/languageProcessing/values/Clause.js +107 -0
  1009. package/build/languageProcessing/values/Clause.js.map +1 -0
  1010. package/build/languageProcessing/values/ProminentWord.js +95 -0
  1011. package/build/languageProcessing/values/ProminentWord.js.map +1 -0
  1012. package/build/languageProcessing/values/Sentence.js +110 -0
  1013. package/build/languageProcessing/values/Sentence.js.map +1 -0
  1014. package/build/languageProcessing/values/index.js +5 -0
  1015. package/build/languageProcessing/values/index.js.map +1 -0
  1016. package/build/markers/addMark.js +10 -0
  1017. package/build/markers/addMark.js.map +1 -0
  1018. package/build/markers/addMarkSingleWord.js +32 -0
  1019. package/build/markers/addMarkSingleWord.js.map +1 -0
  1020. package/build/markers/index.js +4 -0
  1021. package/build/markers/index.js.map +1 -0
  1022. package/build/markers/removeDuplicateMarks.js +26 -0
  1023. package/build/markers/removeDuplicateMarks.js.map +1 -0
  1024. package/build/markers/removeMarks.js +10 -0
  1025. package/build/markers/removeMarks.js.map +1 -0
  1026. package/build/parse/build/build.js +54 -0
  1027. package/build/parse/build/build.js.map +1 -0
  1028. package/build/parse/build/index.js +9 -0
  1029. package/build/parse/build/index.js.map +1 -0
  1030. package/build/parse/build/private/adapt.js +105 -0
  1031. package/build/parse/build/private/adapt.js.map +1 -0
  1032. package/build/parse/build/private/adaptAttributes.js +35 -0
  1033. package/build/parse/build/private/adaptAttributes.js.map +1 -0
  1034. package/build/parse/build/private/alwaysFilterElements.js +27 -0
  1035. package/build/parse/build/private/alwaysFilterElements.js.map +1 -0
  1036. package/build/parse/build/private/combineIntoImplicitParagraphs.js +123 -0
  1037. package/build/parse/build/private/combineIntoImplicitParagraphs.js.map +1 -0
  1038. package/build/parse/build/private/filterBeforeTokenizing.js +32 -0
  1039. package/build/parse/build/private/filterBeforeTokenizing.js.map +1 -0
  1040. package/build/parse/build/private/filterHelpers.js +44 -0
  1041. package/build/parse/build/private/filterHelpers.js.map +1 -0
  1042. package/build/parse/build/private/filterTree.js +42 -0
  1043. package/build/parse/build/private/filterTree.js.map +1 -0
  1044. package/build/parse/build/private/getTextElementPositions.js +179 -0
  1045. package/build/parse/build/private/getTextElementPositions.js.map +1 -0
  1046. package/build/parse/build/private/helpers/parseClassAttribute.js +9 -0
  1047. package/build/parse/build/private/helpers/parseClassAttribute.js.map +1 -0
  1048. package/build/parse/build/private/isPhrasingContent.js +24 -0
  1049. package/build/parse/build/private/isPhrasingContent.js.map +1 -0
  1050. package/build/parse/build/private/parseBlocks.js +144 -0
  1051. package/build/parse/build/private/parseBlocks.js.map +1 -0
  1052. package/build/parse/build/private/tokenize.js +72 -0
  1053. package/build/parse/build/private/tokenize.js.map +1 -0
  1054. package/build/parse/language/LanguageProcessor.js +70 -0
  1055. package/build/parse/language/LanguageProcessor.js.map +1 -0
  1056. package/build/parse/structure/Heading.js +26 -0
  1057. package/build/parse/structure/Heading.js.map +1 -0
  1058. package/build/parse/structure/Node.js +69 -0
  1059. package/build/parse/structure/Node.js.map +1 -0
  1060. package/build/parse/structure/Paragraph.js +47 -0
  1061. package/build/parse/structure/Paragraph.js.map +1 -0
  1062. package/build/parse/structure/Sentence.js +30 -0
  1063. package/build/parse/structure/Sentence.js.map +1 -0
  1064. package/build/parse/structure/SourceCodeLocation.js +40 -0
  1065. package/build/parse/structure/SourceCodeLocation.js.map +1 -0
  1066. package/build/parse/structure/Text.js +26 -0
  1067. package/build/parse/structure/Text.js.map +1 -0
  1068. package/build/parse/structure/Token.js +24 -0
  1069. package/build/parse/structure/Token.js.map +1 -0
  1070. package/build/parse/structure/index.js +12 -0
  1071. package/build/parse/structure/index.js.map +1 -0
  1072. package/build/parse/traverse/findAllInTree.js +56 -0
  1073. package/build/parse/traverse/findAllInTree.js.map +1 -0
  1074. package/build/parse/traverse/index.js +10 -0
  1075. package/build/parse/traverse/index.js.map +1 -0
  1076. package/build/parse/traverse/innerText.js +25 -0
  1077. package/build/parse/traverse/innerText.js.map +1 -0
  1078. package/build/parsedPaper/ParsedPaper.js +93 -0
  1079. package/build/parsedPaper/ParsedPaper.js.map +1 -0
  1080. package/build/parsedPaper/assess/TreeAssessor.js +175 -0
  1081. package/build/parsedPaper/assess/TreeAssessor.js.map +1 -0
  1082. package/build/parsedPaper/assess/assessmentListFactories.js +67 -0
  1083. package/build/parsedPaper/assess/assessmentListFactories.js.map +1 -0
  1084. package/build/parsedPaper/assess/assessments/Assessment.js +92 -0
  1085. package/build/parsedPaper/assess/assessments/Assessment.js.map +1 -0
  1086. package/build/parsedPaper/assess/assessments/index.js +7 -0
  1087. package/build/parsedPaper/assess/assessments/index.js.map +1 -0
  1088. package/build/parsedPaper/assess/assessorFactories.js +96 -0
  1089. package/build/parsedPaper/assess/assessorFactories.js.map +1 -0
  1090. package/build/parsedPaper/assess/cornerstone/assessmentListFactories.js +43 -0
  1091. package/build/parsedPaper/assess/cornerstone/assessmentListFactories.js.map +1 -0
  1092. package/build/parsedPaper/assess/cornerstone/index.js +3 -0
  1093. package/build/parsedPaper/assess/cornerstone/index.js.map +1 -0
  1094. package/build/parsedPaper/assess/index.js +15 -0
  1095. package/build/parsedPaper/assess/index.js.map +1 -0
  1096. package/build/parsedPaper/build/PaperParser.js +97 -0
  1097. package/build/parsedPaper/build/PaperParser.js.map +1 -0
  1098. package/build/parsedPaper/build/linguisticParsing/Sentence.js +89 -0
  1099. package/build/parsedPaper/build/linguisticParsing/Sentence.js.map +1 -0
  1100. package/build/parsedPaper/build/linguisticParsing/SentenceTokenizer.js +287 -0
  1101. package/build/parsedPaper/build/linguisticParsing/SentenceTokenizer.js.map +1 -0
  1102. package/build/parsedPaper/build/linguisticParsing/parseText.js +20 -0
  1103. package/build/parsedPaper/build/linguisticParsing/parseText.js.map +1 -0
  1104. package/build/parsedPaper/build/tree/TreeBuilder.js +76 -0
  1105. package/build/parsedPaper/build/tree/TreeBuilder.js.map +1 -0
  1106. package/build/parsedPaper/build/tree/cleanup/calculateTextIndices.js +178 -0
  1107. package/build/parsedPaper/build/tree/cleanup/calculateTextIndices.js.map +1 -0
  1108. package/build/parsedPaper/build/tree/cleanup/getElementContent.js +21 -0
  1109. package/build/parsedPaper/build/tree/cleanup/getElementContent.js.map +1 -0
  1110. package/build/parsedPaper/build/tree/cleanup/postParsing.js +37 -0
  1111. package/build/parsedPaper/build/tree/cleanup/postParsing.js.map +1 -0
  1112. package/build/parsedPaper/build/tree/html/HTMLTreeConverter.js +220 -0
  1113. package/build/parsedPaper/build/tree/html/HTMLTreeConverter.js.map +1 -0
  1114. package/build/parsedPaper/build/tree/html/buildTree.js +30 -0
  1115. package/build/parsedPaper/build/tree/html/buildTree.js.map +1 -0
  1116. package/build/parsedPaper/build/tree/html/htmlConstants.js +30 -0
  1117. package/build/parsedPaper/build/tree/html/htmlConstants.js.map +1 -0
  1118. package/build/parsedPaper/build/tree/index.js +15 -0
  1119. package/build/parsedPaper/build/tree/index.js.map +1 -0
  1120. package/build/parsedPaper/build/tree/metadata/buildTree.js +30 -0
  1121. package/build/parsedPaper/build/tree/metadata/buildTree.js.map +1 -0
  1122. package/build/parsedPaper/research/TreeResearcher.js +131 -0
  1123. package/build/parsedPaper/research/TreeResearcher.js.map +1 -0
  1124. package/build/parsedPaper/research/index.js +12 -0
  1125. package/build/parsedPaper/research/index.js.map +1 -0
  1126. package/build/parsedPaper/research/researches/Headings.js +20 -0
  1127. package/build/parsedPaper/research/researches/Headings.js.map +1 -0
  1128. package/build/parsedPaper/research/researches/LinkStatistics.js +123 -0
  1129. package/build/parsedPaper/research/researches/LinkStatistics.js.map +1 -0
  1130. package/build/parsedPaper/research/researches/Research.js +53 -0
  1131. package/build/parsedPaper/research/researches/Research.js.map +1 -0
  1132. package/build/parsedPaper/research/researches/index.js +2 -0
  1133. package/build/parsedPaper/research/researches/index.js.map +1 -0
  1134. package/build/parsedPaper/structure/tree/FormattingElement.js +67 -0
  1135. package/build/parsedPaper/structure/tree/FormattingElement.js.map +1 -0
  1136. package/build/parsedPaper/structure/tree/SourceCodeLocation.js +42 -0
  1137. package/build/parsedPaper/structure/tree/SourceCodeLocation.js.map +1 -0
  1138. package/build/parsedPaper/structure/tree/TextContainer.js +84 -0
  1139. package/build/parsedPaper/structure/tree/TextContainer.js.map +1 -0
  1140. package/build/parsedPaper/structure/tree/index.js +11 -0
  1141. package/build/parsedPaper/structure/tree/index.js.map +1 -0
  1142. package/build/parsedPaper/structure/tree/nodes/Heading.js +27 -0
  1143. package/build/parsedPaper/structure/tree/nodes/Heading.js.map +1 -0
  1144. package/build/parsedPaper/structure/tree/nodes/LeafNode.js +75 -0
  1145. package/build/parsedPaper/structure/tree/nodes/LeafNode.js.map +1 -0
  1146. package/build/parsedPaper/structure/tree/nodes/List.js +48 -0
  1147. package/build/parsedPaper/structure/tree/nodes/List.js.map +1 -0
  1148. package/build/parsedPaper/structure/tree/nodes/ListItem.js +27 -0
  1149. package/build/parsedPaper/structure/tree/nodes/ListItem.js.map +1 -0
  1150. package/build/parsedPaper/structure/tree/nodes/MetadataMiscellaneous.js +45 -0
  1151. package/build/parsedPaper/structure/tree/nodes/MetadataMiscellaneous.js.map +1 -0
  1152. package/build/parsedPaper/structure/tree/nodes/MetadataText.js +25 -0
  1153. package/build/parsedPaper/structure/tree/nodes/MetadataText.js.map +1 -0
  1154. package/build/parsedPaper/structure/tree/nodes/Node.js +153 -0
  1155. package/build/parsedPaper/structure/tree/nodes/Node.js.map +1 -0
  1156. package/build/parsedPaper/structure/tree/nodes/Paragraph.js +23 -0
  1157. package/build/parsedPaper/structure/tree/nodes/Paragraph.js.map +1 -0
  1158. package/build/parsedPaper/structure/tree/nodes/StructuredNode.js +53 -0
  1159. package/build/parsedPaper/structure/tree/nodes/StructuredNode.js.map +1 -0
  1160. package/build/parsedPaper/structure/tree/nodes/index.js +11 -0
  1161. package/build/parsedPaper/structure/tree/nodes/index.js.map +1 -0
  1162. package/build/scoring/assessments/assessment.js +70 -0
  1163. package/build/scoring/assessments/assessment.js.map +1 -0
  1164. package/build/scoring/assessments/index.js +61 -0
  1165. package/build/scoring/assessments/index.js.map +1 -0
  1166. package/build/scoring/assessments/readability/ParagraphTooLongAssessment.js +159 -0
  1167. package/build/scoring/assessments/readability/ParagraphTooLongAssessment.js.map +1 -0
  1168. package/build/scoring/assessments/readability/RelatedKeywordsAssessment.js +114 -0
  1169. package/build/scoring/assessments/readability/RelatedKeywordsAssessment.js.map +1 -0
  1170. package/build/scoring/assessments/readability/SentenceBeginningsAssessment.js +128 -0
  1171. package/build/scoring/assessments/readability/SentenceBeginningsAssessment.js.map +1 -0
  1172. package/build/scoring/assessments/readability/SentenceLengthInTextAssessment.js +170 -0
  1173. package/build/scoring/assessments/readability/SentenceLengthInTextAssessment.js.map +1 -0
  1174. package/build/scoring/assessments/readability/TransitionWordsAssessment.js +156 -0
  1175. package/build/scoring/assessments/readability/TransitionWordsAssessment.js.map +1 -0
  1176. package/build/scoring/assessments/seo/ImageCountAssessment.js +104 -0
  1177. package/build/scoring/assessments/seo/ImageCountAssessment.js.map +1 -0
  1178. package/build/scoring/assessments/seo/InternalLinksAssessment.js +106 -0
  1179. package/build/scoring/assessments/seo/InternalLinksAssessment.js.map +1 -0
  1180. package/build/scoring/assessments/seo/IntroductionKeywordAssessment.js +103 -0
  1181. package/build/scoring/assessments/seo/IntroductionKeywordAssessment.js.map +1 -0
  1182. package/build/scoring/assessments/seo/KeyphraseAssessment.js +98 -0
  1183. package/build/scoring/assessments/seo/KeyphraseAssessment.js.map +1 -0
  1184. package/build/scoring/assessments/seo/KeyphraseLengthAssessment.js +103 -0
  1185. package/build/scoring/assessments/seo/KeyphraseLengthAssessment.js.map +1 -0
  1186. package/build/scoring/assessments/seo/KeywordDensityAssessment.js +111 -0
  1187. package/build/scoring/assessments/seo/KeywordDensityAssessment.js.map +1 -0
  1188. package/build/scoring/assessments/seo/MetaDescriptionKeywordAssessment.js +111 -0
  1189. package/build/scoring/assessments/seo/MetaDescriptionKeywordAssessment.js.map +1 -0
  1190. package/build/scoring/assessments/seo/MetaDescriptionLengthAssessment.js +104 -0
  1191. package/build/scoring/assessments/seo/MetaDescriptionLengthAssessment.js.map +1 -0
  1192. package/build/scoring/assessments/seo/MetaTitleKeywordAssessment.js +108 -0
  1193. package/build/scoring/assessments/seo/MetaTitleKeywordAssessment.js.map +1 -0
  1194. package/build/scoring/assessments/seo/NumberInMetaTitleAssessment.js +101 -0
  1195. package/build/scoring/assessments/seo/NumberInMetaTitleAssessment.js.map +1 -0
  1196. package/build/scoring/assessments/seo/OutboundLinksAssessment.js +107 -0
  1197. package/build/scoring/assessments/seo/OutboundLinksAssessment.js.map +1 -0
  1198. package/build/scoring/assessments/seo/PageTitleWidthAssessment.js +99 -0
  1199. package/build/scoring/assessments/seo/PageTitleWidthAssessment.js.map +1 -0
  1200. package/build/scoring/assessments/seo/SchemaAssessment.js +108 -0
  1201. package/build/scoring/assessments/seo/SchemaAssessment.js.map +1 -0
  1202. package/build/scoring/assessments/seo/SingleH1Assessment.js +108 -0
  1203. package/build/scoring/assessments/seo/SingleH1Assessment.js.map +1 -0
  1204. package/build/scoring/assessments/seo/SingleTitleAssessment.js +101 -0
  1205. package/build/scoring/assessments/seo/SingleTitleAssessment.js.map +1 -0
  1206. package/build/scoring/assessments/seo/SubHeadingsKeywordAssessment.js +99 -0
  1207. package/build/scoring/assessments/seo/SubHeadingsKeywordAssessment.js.map +1 -0
  1208. package/build/scoring/assessments/seo/TextImagesAssessment.js +135 -0
  1209. package/build/scoring/assessments/seo/TextImagesAssessment.js.map +1 -0
  1210. package/build/scoring/assessments/seo/TextLengthAssessment.js +97 -0
  1211. package/build/scoring/assessments/seo/TextLengthAssessment.js.map +1 -0
  1212. package/build/scoring/assessments/seo/UrlKeywordAssessment.js +100 -0
  1213. package/build/scoring/assessments/seo/UrlKeywordAssessment.js.map +1 -0
  1214. package/build/scoring/assessments/seo/UrlLengthAssessment.js +99 -0
  1215. package/build/scoring/assessments/seo/UrlLengthAssessment.js.map +1 -0
  1216. package/build/scoring/assessors/assessor.js +277 -0
  1217. package/build/scoring/assessors/assessor.js.map +1 -0
  1218. package/build/scoring/assessors/avadaAssessor.js +85 -0
  1219. package/build/scoring/assessors/avadaAssessor.js.map +1 -0
  1220. package/build/scoring/assessors/contentAssessor.js +143 -0
  1221. package/build/scoring/assessors/contentAssessor.js.map +1 -0
  1222. package/build/scoring/assessors/index.js +5 -0
  1223. package/build/scoring/assessors/index.js.map +1 -0
  1224. package/build/scoring/assessors/seoAssessor.js +38 -0
  1225. package/build/scoring/assessors/seoAssessor.js.map +1 -0
  1226. package/build/scoring/helpers/assessments/checkForTooLongSentences.js +14 -0
  1227. package/build/scoring/helpers/assessments/checkForTooLongSentences.js.map +1 -0
  1228. package/build/scoring/helpers/assessments/inRange.js +43 -0
  1229. package/build/scoring/helpers/assessments/inRange.js.map +1 -0
  1230. package/build/scoring/helpers/assessments/keyphraseLengthFactor.js +11 -0
  1231. package/build/scoring/helpers/assessments/keyphraseLengthFactor.js.map +1 -0
  1232. package/build/scoring/helpers/assessments/recommendedKeywordCount.js +41 -0
  1233. package/build/scoring/helpers/assessments/recommendedKeywordCount.js.map +1 -0
  1234. package/build/scoring/helpers/index.js +84 -0
  1235. package/build/scoring/helpers/index.js.map +1 -0
  1236. package/build/scoring/interpreters/index.js +3 -0
  1237. package/build/scoring/interpreters/index.js.map +1 -0
  1238. package/build/scoring/interpreters/scoreToRating.js +26 -0
  1239. package/build/scoring/interpreters/scoreToRating.js.map +1 -0
  1240. package/build/scoring/renderers/AssessorPresenter.js +342 -0
  1241. package/build/scoring/renderers/AssessorPresenter.js.map +1 -0
  1242. package/build/scoring/scoreAggregators/ReadabilityScoreAggregator.js +197 -0
  1243. package/build/scoring/scoreAggregators/ReadabilityScoreAggregator.js.map +1 -0
  1244. package/build/scoring/scoreAggregators/SEOScoreAggregator.js +54 -0
  1245. package/build/scoring/scoreAggregators/SEOScoreAggregator.js.map +1 -0
  1246. package/build/scoring/scoreAggregators/ScoreAggregator.js +24 -0
  1247. package/build/scoring/scoreAggregators/ScoreAggregator.js.map +1 -0
  1248. package/build/scoring/scoreAggregators/index.js +4 -0
  1249. package/build/scoring/scoreAggregators/index.js.map +1 -0
  1250. package/build/values/AssessmentResult.js +479 -0
  1251. package/build/values/AssessmentResult.js.map +1 -0
  1252. package/build/values/Mark.js +267 -0
  1253. package/build/values/Mark.js.map +1 -0
  1254. package/build/values/Paper.js +489 -0
  1255. package/build/values/Paper.js.map +1 -0
  1256. package/build/values/index.js +5 -0
  1257. package/build/values/index.js.map +1 -0
  1258. package/build/vendor/turkishStemmer.js +2811 -0
  1259. package/build/vendor/turkishStemmer.js.map +1 -0
  1260. package/package.json +2 -2
@@ -0,0 +1,54 @@
1
+ // External dependencies.
2
+ import { parseFragment } from "parse5";
3
+ // Internal dependencies.
4
+ import adapt from "./private/adapt";
5
+ import tokenize from "./private/tokenize";
6
+ import filterTree from "./private/filterTree";
7
+ import permanentFilters from "./private/alwaysFilterElements";
8
+ import { filterBeforeTokenizing } from "./private/filterBeforeTokenizing";
9
+ import parseBlocks from "./private/parseBlocks";
10
+ import filterShortcodesFromTree from "../../languageProcessing/helpers/sanitize/filterShortcodesFromTree";
11
+ import { htmlEntitiesRegex } from "../../helpers/htmlEntities";
12
+
13
+ /**
14
+ * Parses the HTML string to a tree representation of the HTML document.
15
+ *
16
+ * @param {Paper} paper The paper to build the tree from.
17
+ * @param {LanguageProcessor} languageProcessor The language processor to use.
18
+ * @param {string[]} [shortcodes] An optional array of all active shortcodes.
19
+ *
20
+ * @returns {Node} The tree representation of the HTML string.
21
+ */
22
+ export default function build(paper, languageProcessor, shortcodes) {
23
+ let html = paper.getText();
24
+ // Change HTML entities like "&" to "#amp;" to prevent early conversion to "&" -- which would invalidate token positions.
25
+ html = html.replace(htmlEntitiesRegex, "#$1");
26
+ let tree = adapt(parseFragment(html, {
27
+ sourceCodeLocationInfo: true
28
+ }));
29
+ if (tree.childNodes && tree.childNodes.length > 0) {
30
+ parseBlocks(paper, tree);
31
+ }
32
+
33
+ /*
34
+ * Filter out some content from the tree so that it can be correctly tokenized. We don't want to tokenize text in
35
+ * between tags such as 'code' and 'script', but we do want to take into account the length of those elements when
36
+ * calculating sentence and token positions.
37
+ */
38
+ tree = filterBeforeTokenizing(tree);
39
+
40
+ // Add sentences and tokens to the tree's paragraph and heading nodes.
41
+ tree = tokenize(tree, languageProcessor);
42
+
43
+ // Filter out shortcodes from the tree.
44
+ if (shortcodes) {
45
+ filterShortcodesFromTree(tree, shortcodes);
46
+ }
47
+
48
+ /*
49
+ * Filter out elements we don't want to include in the analysis. Only do this after tokenization as we need to
50
+ * have all inline elements in the tree during tokenization to correctly calculate sentence and token positions.
51
+ */
52
+ return filterTree(tree, permanentFilters);
53
+ }
54
+ //# sourceMappingURL=build.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.js","names":["parseFragment","adapt","tokenize","filterTree","permanentFilters","filterBeforeTokenizing","parseBlocks","filterShortcodesFromTree","htmlEntitiesRegex","build","paper","languageProcessor","shortcodes","html","getText","replace","tree","sourceCodeLocationInfo","childNodes","length"],"sources":["../../../src/parse/build/build.js"],"sourcesContent":["// External dependencies.\nimport { parseFragment } from \"parse5\";\n// Internal dependencies.\nimport adapt from \"./private/adapt\";\nimport tokenize from \"./private/tokenize\";\nimport filterTree from \"./private/filterTree\";\nimport permanentFilters from \"./private/alwaysFilterElements\";\nimport { filterBeforeTokenizing } from \"./private/filterBeforeTokenizing\";\nimport parseBlocks from \"./private/parseBlocks\";\nimport filterShortcodesFromTree from \"../../languageProcessing/helpers/sanitize/filterShortcodesFromTree\";\nimport { htmlEntitiesRegex } from \"../../helpers/htmlEntities\";\n\n/**\n * Parses the HTML string to a tree representation of the HTML document.\n *\n * @param {Paper} paper The paper to build the tree from.\n * @param {LanguageProcessor} languageProcessor The language processor to use.\n * @param {string[]} [shortcodes] An optional array of all active shortcodes.\n *\n * @returns {Node} The tree representation of the HTML string.\n */\nexport default function build( paper, languageProcessor, shortcodes ) {\n\tlet html = paper.getText();\n\t// Change HTML entities like \"&\" to \"#amp;\" to prevent early conversion to \"&\" -- which would invalidate token positions.\n\thtml = html.replace( htmlEntitiesRegex, \"#$1\" );\n\n\tlet tree = adapt( parseFragment( html, { sourceCodeLocationInfo: true } ) );\n\tif ( tree.childNodes && tree.childNodes.length > 0 ) {\n\t\tparseBlocks( paper, tree );\n\t}\n\n\t/*\n\t * Filter out some content from the tree so that it can be correctly tokenized. We don't want to tokenize text in\n\t * between tags such as 'code' and 'script', but we do want to take into account the length of those elements when\n\t * calculating sentence and token positions.\n\t */\n\ttree = filterBeforeTokenizing( tree );\n\n\t// Add sentences and tokens to the tree's paragraph and heading nodes.\n\ttree = tokenize( tree, languageProcessor );\n\n\t// Filter out shortcodes from the tree.\n\tif ( shortcodes ) {\n\t\tfilterShortcodesFromTree( tree, shortcodes );\n\t}\n\n\t/*\n\t * Filter out elements we don't want to include in the analysis. Only do this after tokenization as we need to\n\t * have all inline elements in the tree during tokenization to correctly calculate sentence and token positions.\n\t */\n\treturn filterTree( tree, permanentFilters );\n}\n"],"mappings":"AAAA;AACA,SAASA,aAAa,QAAQ,QAAQ;AACtC;AACA,OAAOC,KAAK;AACZ,OAAOC,QAAQ;AACf,OAAOC,UAAU;AACjB,OAAOC,gBAAgB;AACvB,SAASC,sBAAsB;AAC/B,OAAOC,WAAW;AAClB,OAAOC,wBAAwB;AAC/B,SAASC,iBAAiB;;AAE1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,KAAKA,CAAEC,KAAK,EAAEC,iBAAiB,EAAEC,UAAU,EAAG;EACrE,IAAIC,IAAI,GAAGH,KAAK,CAACI,OAAO,CAAC,CAAC;EAC1B;EACAD,IAAI,GAAGA,IAAI,CAACE,OAAO,CAAEP,iBAAiB,EAAE,KAAM,CAAC;EAE/C,IAAIQ,IAAI,GAAGf,KAAK,CAAED,aAAa,CAAEa,IAAI,EAAE;IAAEI,sBAAsB,EAAE;EAAK,CAAE,CAAE,CAAC;EAC3E,IAAKD,IAAI,CAACE,UAAU,IAAIF,IAAI,CAACE,UAAU,CAACC,MAAM,GAAG,CAAC,EAAG;IACpDb,WAAW,CAAEI,KAAK,EAAEM,IAAK,CAAC;EAC3B;;EAEA;AACD;AACA;AACA;AACA;EACCA,IAAI,GAAGX,sBAAsB,CAAEW,IAAK,CAAC;;EAErC;EACAA,IAAI,GAAGd,QAAQ,CAAEc,IAAI,EAAEL,iBAAkB,CAAC;;EAE1C;EACA,IAAKC,UAAU,EAAG;IACjBL,wBAAwB,CAAES,IAAI,EAAEJ,UAAW,CAAC;EAC7C;;EAEA;AACD;AACA;AACA;EACC,OAAOT,UAAU,CAAEa,IAAI,EAAEZ,gBAAiB,CAAC;AAC5C","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ import build from "./build";
2
+
3
+ /**
4
+ * @module parse/build
5
+ *
6
+ * Module containing functions to build a tree for the analysis.
7
+ */
8
+ export { build };
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["build"],"sources":["../../../src/parse/build/index.js"],"sourcesContent":["import build from \"./build\";\n\n/**\n * @module parse/build\n *\n * Module containing functions to build a tree for the analysis.\n */\nexport {\n\tbuild,\n};\n"],"mappings":"AAAA,OAAOA,KAAK;;AAEZ;AACA;AACA;AACA;AACA;AACA,SACCA,KAAK","ignoreList":[]}
@@ -0,0 +1,105 @@
1
+ import combineIntoImplicitParagraphs from "./combineIntoImplicitParagraphs";
2
+ import adaptAttributes from "./adaptAttributes";
3
+ import isPhrasingContent from "./isPhrasingContent";
4
+ import { isEmpty } from "lodash";
5
+ import { Paragraph, Text, Heading, Node } from "../../structure";
6
+
7
+ /**
8
+ * Whether the element with the specified name is a paragraph.
9
+ *
10
+ * @param {string} nodeName The name/tag of the node.
11
+ *
12
+ * @returns {boolean} Whether the element is considered a paragraph.
13
+ */
14
+ function isParagraph(nodeName) {
15
+ return nodeName === "p";
16
+ }
17
+
18
+ /**
19
+ * Whether the element with the specified name is a heading.
20
+ *
21
+ * @param {string} nodeName The name/tag of the node.
22
+ *
23
+ * @returns {boolean} Whether the element is considered a heading.
24
+ */
25
+ function isHeading(nodeName) {
26
+ return ["h1", "h2", "h3", "h4", "h5", "h6"].includes(nodeName);
27
+ }
28
+
29
+ /**
30
+ * Whether the element is text.
31
+ *
32
+ * @param {string} nodeName The name/tag of the node.
33
+ *
34
+ * @returns {boolean} Whether the element is considered text.
35
+ */
36
+ function isText(nodeName) {
37
+ return nodeName === "#text";
38
+ }
39
+
40
+ /**
41
+ * Whether the element with the specified name is a block level element.
42
+ *
43
+ * @param {string} nodeName The name/tag of the node.
44
+ *
45
+ * @returns {boolean} Whether the element is considered a block level element.
46
+ */
47
+ function isBlockElement(nodeName) {
48
+ return !(isParagraph(nodeName) || isPhrasingContent(nodeName) || isHeading(nodeName));
49
+ }
50
+
51
+ /**
52
+ * Checks whether the current node is an overarching paragraph.
53
+ * Overarching paragraphs have double `<br>` nodes (line breaks) in their children.
54
+ * We consider those to be indicating the end and start of an implicit paragraph, similar to the `autop` function in WordPress.
55
+ *
56
+ * @param {string} nodeName The name of the current node.
57
+ * @param {Node[]} children The children of the current nodes.
58
+ *
59
+ * @returns {boolean} Whether the current node is an overarching paragraph.
60
+ */
61
+ function isOverarchingParagraph(nodeName, children) {
62
+ return isParagraph(nodeName) && children.some((node, index, childNodes) => {
63
+ const nextNode = childNodes.length - 1 !== index && childNodes[index + 1];
64
+ return node.name === "br" && nextNode && nextNode.name === "br";
65
+ });
66
+ }
67
+
68
+ /**
69
+ * Adapts the `parse5` tree to our own tree representation.
70
+ *
71
+ * By adapting the external `parse5` structure to our own tree representation
72
+ * we reduce the coupling between our code and theirs, which makes our code
73
+ * more robust against changes in the `parse5` library. [See also this blog post about coupling](https://mrpicky.dev/six-shades-of-coupling/)
74
+ *
75
+ * @param {Object} tree The parse5 tree representation.
76
+ *
77
+ * @returns {Node} The adapted tree.
78
+ */
79
+ export default function adapt(tree) {
80
+ if (isText(tree.nodeName)) {
81
+ return new Text(tree);
82
+ }
83
+ let children = [];
84
+ let isOverarching = false;
85
+ if (!isEmpty(tree.childNodes)) {
86
+ children = tree.childNodes.map(adapt);
87
+ if (isBlockElement(tree.nodeName)) {
88
+ children = combineIntoImplicitParagraphs(children, tree.sourceCodeLocation);
89
+ }
90
+ if (isOverarchingParagraph(tree.nodeName, children)) {
91
+ isOverarching = true;
92
+ children = combineIntoImplicitParagraphs(children, tree.sourceCodeLocation);
93
+ }
94
+ }
95
+ const attributes = adaptAttributes(tree.attrs);
96
+ if (isParagraph(tree.nodeName)) {
97
+ return new Paragraph(attributes, children, tree.sourceCodeLocation, false, isOverarching);
98
+ }
99
+ if (isHeading(tree.nodeName)) {
100
+ const headingLevel = parseInt(tree.nodeName[1], 10);
101
+ return new Heading(headingLevel, attributes, children, tree.sourceCodeLocation);
102
+ }
103
+ return new Node(tree.nodeName, attributes, children, tree.sourceCodeLocation);
104
+ }
105
+ //# sourceMappingURL=adapt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapt.js","names":["combineIntoImplicitParagraphs","adaptAttributes","isPhrasingContent","isEmpty","Paragraph","Text","Heading","Node","isParagraph","nodeName","isHeading","includes","isText","isBlockElement","isOverarchingParagraph","children","some","node","index","childNodes","nextNode","length","name","adapt","tree","isOverarching","map","sourceCodeLocation","attributes","attrs","headingLevel","parseInt"],"sources":["../../../../src/parse/build/private/adapt.js"],"sourcesContent":["import combineIntoImplicitParagraphs from \"./combineIntoImplicitParagraphs\";\nimport adaptAttributes from \"./adaptAttributes\";\nimport isPhrasingContent from \"./isPhrasingContent\";\nimport { isEmpty } from \"lodash\";\nimport { Paragraph, Text, Heading, Node } from \"../../structure\";\n\n/**\n * Whether the element with the specified name is a paragraph.\n *\n * @param {string} nodeName The name/tag of the node.\n *\n * @returns {boolean} Whether the element is considered a paragraph.\n */\nfunction isParagraph( nodeName ) {\n\treturn nodeName === \"p\";\n}\n\n/**\n * Whether the element with the specified name is a heading.\n *\n * @param {string} nodeName The name/tag of the node.\n *\n * @returns {boolean} Whether the element is considered a heading.\n */\nfunction isHeading( nodeName ) {\n\treturn [ \"h1\", \"h2\", \"h3\", \"h4\", \"h5\", \"h6\" ].includes( nodeName );\n}\n\n/**\n * Whether the element is text.\n *\n * @param {string} nodeName The name/tag of the node.\n *\n * @returns {boolean} Whether the element is considered text.\n */\nfunction isText( nodeName ) {\n\treturn nodeName === \"#text\";\n}\n\n/**\n * Whether the element with the specified name is a block level element.\n *\n * @param {string} nodeName The name/tag of the node.\n *\n * @returns {boolean} Whether the element is considered a block level element.\n */\nfunction isBlockElement( nodeName ) {\n\treturn ! (\n\t\tisParagraph( nodeName ) ||\n\t\tisPhrasingContent( nodeName ) ||\n\t\tisHeading( nodeName )\n\t);\n}\n\n/**\n * Checks whether the current node is an overarching paragraph.\n * Overarching paragraphs have double `<br>` nodes (line breaks) in their children.\n * We consider those to be indicating the end and start of an implicit paragraph, similar to the `autop` function in WordPress.\n *\n * @param {string} nodeName The name of the current node.\n * @param {Node[]} children The children of the current nodes.\n *\n * @returns {boolean} Whether the current node is an overarching paragraph.\n */\nfunction isOverarchingParagraph( nodeName, children ) {\n\treturn isParagraph( nodeName ) && children.some( ( node, index, childNodes ) => {\n\t\tconst nextNode = childNodes.length - 1 !== index && childNodes[ index + 1 ];\n\t\treturn node.name === \"br\" && nextNode && nextNode.name === \"br\";\n\t} );\n}\n\n/**\n * Adapts the `parse5` tree to our own tree representation.\n *\n * By adapting the external `parse5` structure to our own tree representation\n * we reduce the coupling between our code and theirs, which makes our code\n * more robust against changes in the `parse5` library. [See also this blog post about coupling](https://mrpicky.dev/six-shades-of-coupling/)\n *\n * @param {Object} tree The parse5 tree representation.\n *\n * @returns {Node} The adapted tree.\n */\nexport default function adapt( tree ) {\n\tif ( isText( tree.nodeName ) ) {\n\t\treturn new Text( tree );\n\t}\n\n\tlet children = [];\n\tlet isOverarching = false;\n\tif ( ! isEmpty( tree.childNodes ) ) {\n\t\tchildren = tree.childNodes.map( adapt );\n\t\tif ( isBlockElement( tree.nodeName ) ) {\n\t\t\tchildren = combineIntoImplicitParagraphs( children, tree.sourceCodeLocation );\n\t\t}\n\t\tif ( isOverarchingParagraph( tree.nodeName, children ) ) {\n\t\t\tisOverarching = true;\n\t\t\tchildren = combineIntoImplicitParagraphs( children, tree.sourceCodeLocation );\n\t\t}\n\t}\n\n\tconst attributes = adaptAttributes( tree.attrs );\n\n\tif ( isParagraph( tree.nodeName ) ) {\n\t\treturn new Paragraph( attributes, children, tree.sourceCodeLocation, false, isOverarching );\n\t}\n\n\tif ( isHeading( tree.nodeName ) ) {\n\t\tconst headingLevel = parseInt( tree.nodeName[ 1 ], 10 );\n\t\treturn new Heading( headingLevel, attributes, children, tree.sourceCodeLocation );\n\t}\n\n\treturn new Node( tree.nodeName, attributes, children, tree.sourceCodeLocation );\n}\n"],"mappings":"AAAA,OAAOA,6BAA6B;AACpC,OAAOC,eAAe;AACtB,OAAOC,iBAAiB;AACxB,SAASC,OAAO,QAAQ,QAAQ;AAChC,SAASC,SAAS,EAAEC,IAAI,EAAEC,OAAO,EAAEC,IAAI;;AAEvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,WAAWA,CAAEC,QAAQ,EAAG;EAChC,OAAOA,QAAQ,KAAK,GAAG;AACxB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,SAASA,CAAED,QAAQ,EAAG;EAC9B,OAAO,CAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAE,CAACE,QAAQ,CAAEF,QAAS,CAAC;AACnE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASG,MAAMA,CAAEH,QAAQ,EAAG;EAC3B,OAAOA,QAAQ,KAAK,OAAO;AAC5B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASI,cAAcA,CAAEJ,QAAQ,EAAG;EACnC,OAAO,EACND,WAAW,CAAEC,QAAS,CAAC,IACvBP,iBAAiB,CAAEO,QAAS,CAAC,IAC7BC,SAAS,CAAED,QAAS,CAAC,CACrB;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASK,sBAAsBA,CAAEL,QAAQ,EAAEM,QAAQ,EAAG;EACrD,OAAOP,WAAW,CAAEC,QAAS,CAAC,IAAIM,QAAQ,CAACC,IAAI,CAAE,CAAEC,IAAI,EAAEC,KAAK,EAAEC,UAAU,KAAM;IAC/E,MAAMC,QAAQ,GAAGD,UAAU,CAACE,MAAM,GAAG,CAAC,KAAKH,KAAK,IAAIC,UAAU,CAAED,KAAK,GAAG,CAAC,CAAE;IAC3E,OAAOD,IAAI,CAACK,IAAI,KAAK,IAAI,IAAIF,QAAQ,IAAIA,QAAQ,CAACE,IAAI,KAAK,IAAI;EAChE,CAAE,CAAC;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,KAAKA,CAAEC,IAAI,EAAG;EACrC,IAAKZ,MAAM,CAAEY,IAAI,CAACf,QAAS,CAAC,EAAG;IAC9B,OAAO,IAAIJ,IAAI,CAAEmB,IAAK,CAAC;EACxB;EAEA,IAAIT,QAAQ,GAAG,EAAE;EACjB,IAAIU,aAAa,GAAG,KAAK;EACzB,IAAK,CAAEtB,OAAO,CAAEqB,IAAI,CAACL,UAAW,CAAC,EAAG;IACnCJ,QAAQ,GAAGS,IAAI,CAACL,UAAU,CAACO,GAAG,CAAEH,KAAM,CAAC;IACvC,IAAKV,cAAc,CAAEW,IAAI,CAACf,QAAS,CAAC,EAAG;MACtCM,QAAQ,GAAGf,6BAA6B,CAAEe,QAAQ,EAAES,IAAI,CAACG,kBAAmB,CAAC;IAC9E;IACA,IAAKb,sBAAsB,CAAEU,IAAI,CAACf,QAAQ,EAAEM,QAAS,CAAC,EAAG;MACxDU,aAAa,GAAG,IAAI;MACpBV,QAAQ,GAAGf,6BAA6B,CAAEe,QAAQ,EAAES,IAAI,CAACG,kBAAmB,CAAC;IAC9E;EACD;EAEA,MAAMC,UAAU,GAAG3B,eAAe,CAAEuB,IAAI,CAACK,KAAM,CAAC;EAEhD,IAAKrB,WAAW,CAAEgB,IAAI,CAACf,QAAS,CAAC,EAAG;IACnC,OAAO,IAAIL,SAAS,CAAEwB,UAAU,EAAEb,QAAQ,EAAES,IAAI,CAACG,kBAAkB,EAAE,KAAK,EAAEF,aAAc,CAAC;EAC5F;EAEA,IAAKf,SAAS,CAAEc,IAAI,CAACf,QAAS,CAAC,EAAG;IACjC,MAAMqB,YAAY,GAAGC,QAAQ,CAAEP,IAAI,CAACf,QAAQ,CAAE,CAAC,CAAE,EAAE,EAAG,CAAC;IACvD,OAAO,IAAIH,OAAO,CAAEwB,YAAY,EAAEF,UAAU,EAAEb,QAAQ,EAAES,IAAI,CAACG,kBAAmB,CAAC;EAClF;EAEA,OAAO,IAAIpB,IAAI,CAAEiB,IAAI,CAACf,QAAQ,EAAEmB,UAAU,EAAEb,QAAQ,EAAES,IAAI,CAACG,kBAAmB,CAAC;AAChF","ignoreList":[]}
@@ -0,0 +1,35 @@
1
+ import parseClassAttribute from "./helpers/parseClassAttribute";
2
+
3
+ /**
4
+ * @typedef Parse5Attribute
5
+ * @property {string} name The name of the attribute.
6
+ * @property {string} value The value of the attribute.
7
+ */
8
+
9
+ /**
10
+ * Adapts name-value attribute pairs as output by `parse5`
11
+ * and transforms it into an easier to use object mapping attribute names
12
+ * to values.
13
+ *
14
+ * @param {Parse5Attribute[]|null} parse5attributes The attributes as name-value pairs.
15
+ *
16
+ * @returns {Object} The attributes as an object mapping attribute name to value.
17
+ */
18
+ function adaptAttributes(parse5attributes) {
19
+ if (!parse5attributes) {
20
+ return {};
21
+ }
22
+ const attributes = {};
23
+ parse5attributes.forEach(({
24
+ name,
25
+ value
26
+ }) => {
27
+ if (name === "class") {
28
+ value = parseClassAttribute(value);
29
+ }
30
+ attributes[name] = value;
31
+ });
32
+ return attributes;
33
+ }
34
+ export default adaptAttributes;
35
+ //# sourceMappingURL=adaptAttributes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adaptAttributes.js","names":["parseClassAttribute","adaptAttributes","parse5attributes","attributes","forEach","name","value"],"sources":["../../../../src/parse/build/private/adaptAttributes.js"],"sourcesContent":["import parseClassAttribute from \"./helpers/parseClassAttribute\";\n\n/**\n * @typedef Parse5Attribute\n * @property {string} name The name of the attribute.\n * @property {string} value The value of the attribute.\n */\n\n/**\n * Adapts name-value attribute pairs as output by `parse5`\n * and transforms it into an easier to use object mapping attribute names\n * to values.\n *\n * @param {Parse5Attribute[]|null} parse5attributes The attributes as name-value pairs.\n *\n * @returns {Object} The attributes as an object mapping attribute name to value.\n */\nfunction adaptAttributes( parse5attributes ) {\n\tif ( ! parse5attributes ) {\n\t\treturn {};\n\t}\n\n\tconst attributes = {};\n\n\tparse5attributes.forEach( ( { name, value } ) => {\n\t\tif ( name === \"class\" ) {\n\t\t\tvalue = parseClassAttribute( value );\n\t\t}\n\t\tattributes[ name ] = value;\n\t} );\n\n\n\treturn attributes;\n}\n\nexport default adaptAttributes;\n"],"mappings":"AAAA,OAAOA,mBAAmB;;AAE1B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,eAAeA,CAAEC,gBAAgB,EAAG;EAC5C,IAAK,CAAEA,gBAAgB,EAAG;IACzB,OAAO,CAAC,CAAC;EACV;EAEA,MAAMC,UAAU,GAAG,CAAC,CAAC;EAErBD,gBAAgB,CAACE,OAAO,CAAE,CAAE;IAAEC,IAAI;IAAEC;EAAM,CAAC,KAAM;IAChD,IAAKD,IAAI,KAAK,OAAO,EAAG;MACvBC,KAAK,GAAGN,mBAAmB,CAAEM,KAAM,CAAC;IACrC;IACAH,UAAU,CAAEE,IAAI,CAAE,GAAGC,KAAK;EAC3B,CAAE,CAAC;EAGH,OAAOH,UAAU;AAClB;AAEA,eAAeF,eAAe","ignoreList":[]}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * A config file that contains filters that should always apply.
3
+ */
4
+
5
+ import { elementHasName, elementHasClass, elementHasID } from "./filterHelpers";
6
+
7
+ // These are elements that we don't want to include in the analysis and that can be child nodes of paragraphs or headings.
8
+ export const canBeChildOfParagraph = ["code", "kbd", "math", "q", "samp", "script", "var", "#comment", "cite", "form", "map", "noscript", "output"];
9
+ const permanentFilters = [
10
+ // Filters out Yoast blocks that don't need to be part of the analysis.
11
+ // The only Yoast blocks that are not filtered out are the FAQ and the How-to block.
12
+ // The other Yoast blocks we want to filter (i.e. Yoast siblings, Yoast subpages, Yoast breadcrumbs) enter the Paper as HTML comments.
13
+ // Comments are filtered out in `filterBeforeTokenizing.js` step.
14
+ elementHasClass("yoast-table-of-contents"), elementHasClass("yoast-reading-time__wrapper"),
15
+ // Filters for Elementor widgets
16
+ elementHasID("breadcrumbs"), elementHasClass("elementor-button-wrapper"), elementHasClass("elementor-divider"), elementHasClass("elementor-spacer"), elementHasClass("elementor-custom-embed"), elementHasClass("elementor-icon-wrapper"), elementHasClass("elementor-icon-box-wrapper"), elementHasClass("elementor-counter"), elementHasClass("elementor-progress-wrapper"),
17
+ // This element is used for the progress bar widget title.
18
+ elementHasClass("elementor-title"), elementHasClass("elementor-alert"), elementHasClass("elementor-soundcloud-wrapper"), elementHasClass("elementor-shortcode"), elementHasClass("elementor-menu-anchor"), elementHasClass("e-rating"),
19
+ // Filters out HTML elements.
20
+ /* Elements are filtered out when: they contain content outside of the author's control (incl. quotes and embedded
21
+ content); their content isn't natural language (e.g. code); they contain metadata hidden from the page visitor
22
+ (e.g. <style>); they are used to accept input from the visitor. Deprecated HTML elements are not included.*/
23
+ elementHasName("base"), elementHasName("blockquote"), elementHasName("canvas"), elementHasName("code"),
24
+ // It seems that the <head> element is filtered out by the parser we employ, but it's included here for completeness.
25
+ elementHasName("head"), elementHasName("iframe"), elementHasName("input"), elementHasName("kbd"), elementHasName("link"), elementHasName("math"), elementHasName("meta"), elementHasName("meter"), elementHasName("noscript"), elementHasName("object"), elementHasName("portal"), elementHasName("pre"), elementHasName("progress"), elementHasName("q"), elementHasName("samp"), elementHasName("script"), elementHasName("slot"), elementHasName("style"), elementHasName("svg"), elementHasName("template"), elementHasName("textarea"), elementHasName("title"), elementHasName("var"), elementHasName("#comment"), elementHasName("cite"), elementHasName("form"), elementHasName("map"), elementHasName("noscript"), elementHasName("output")];
26
+ export default permanentFilters;
27
+ //# sourceMappingURL=alwaysFilterElements.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alwaysFilterElements.js","names":["elementHasName","elementHasClass","elementHasID","canBeChildOfParagraph","permanentFilters"],"sources":["../../../../src/parse/build/private/alwaysFilterElements.js"],"sourcesContent":["/**\n * A config file that contains filters that should always apply.\n */\n\nimport { elementHasName, elementHasClass, elementHasID } from \"./filterHelpers\";\n\n// These are elements that we don't want to include in the analysis and that can be child nodes of paragraphs or headings.\nexport const canBeChildOfParagraph = [ \"code\", \"kbd\", \"math\", \"q\", \"samp\", \"script\", \"var\", \"#comment\", \"cite\", \"form\",\n\t\"map\", \"noscript\", \"output\" ];\n\nconst permanentFilters = [\n\t// Filters out Yoast blocks that don't need to be part of the analysis.\n\t// The only Yoast blocks that are not filtered out are the FAQ and the How-to block.\n\t// The other Yoast blocks we want to filter (i.e. Yoast siblings, Yoast subpages, Yoast breadcrumbs) enter the Paper as HTML comments.\n\t// Comments are filtered out in `filterBeforeTokenizing.js` step.\n\telementHasClass( \"yoast-table-of-contents\" ),\n\telementHasClass( \"yoast-reading-time__wrapper\" ),\n\t// Filters for Elementor widgets\n\telementHasID( \"breadcrumbs\" ),\n\telementHasClass( \"elementor-button-wrapper\" ),\n\telementHasClass( \"elementor-divider\" ),\n\telementHasClass( \"elementor-spacer\" ),\n\telementHasClass( \"elementor-custom-embed\" ),\n\telementHasClass( \"elementor-icon-wrapper\" ),\n\telementHasClass( \"elementor-icon-box-wrapper\" ),\n\telementHasClass( \"elementor-counter\" ),\n\telementHasClass( \"elementor-progress-wrapper\" ),\n\t// This element is used for the progress bar widget title.\n\telementHasClass( \"elementor-title\" ),\n\telementHasClass( \"elementor-alert\" ),\n\telementHasClass( \"elementor-soundcloud-wrapper\" ),\n\telementHasClass( \"elementor-shortcode\" ),\n\telementHasClass( \"elementor-menu-anchor\" ),\n\telementHasClass( \"e-rating\" ),\n\t// Filters out HTML elements.\n\t/* Elements are filtered out when: they contain content outside of the author's control (incl. quotes and embedded\n\tcontent); their content isn't natural language (e.g. code); they contain metadata hidden from the page visitor\n\t(e.g. <style>); they are used to accept input from the visitor. Deprecated HTML elements are not included.*/\n\telementHasName( \"base\" ),\n\telementHasName( \"blockquote\" ),\n\telementHasName( \"canvas\" ),\n\telementHasName( \"code\" ),\n\t// It seems that the <head> element is filtered out by the parser we employ, but it's included here for completeness.\n\telementHasName( \"head\" ),\n\telementHasName( \"iframe\" ),\n\telementHasName( \"input\" ),\n\telementHasName( \"kbd\" ),\n\telementHasName( \"link\" ),\n\telementHasName( \"math\" ),\n\telementHasName( \"meta\" ),\n\telementHasName( \"meter\" ),\n\telementHasName( \"noscript\" ),\n\telementHasName( \"object\" ),\n\telementHasName( \"portal\" ),\n\telementHasName( \"pre\" ),\n\telementHasName( \"progress\" ),\n\telementHasName( \"q\" ),\n\telementHasName( \"samp\" ),\n\telementHasName( \"script\" ),\n\telementHasName( \"slot\" ),\n\telementHasName( \"style\" ),\n\telementHasName( \"svg\" ),\n\telementHasName( \"template\" ),\n\telementHasName( \"textarea\" ),\n\telementHasName( \"title\" ),\n\telementHasName( \"var\" ),\n\telementHasName( \"#comment\" ),\n\telementHasName( \"cite\" ),\n\telementHasName( \"form\" ),\n\telementHasName( \"map\" ),\n\telementHasName( \"noscript\" ),\n\telementHasName( \"output\" ),\n];\n\nexport default permanentFilters;\n"],"mappings":"AAAA;AACA;AACA;;AAEA,SAASA,cAAc,EAAEC,eAAe,EAAEC,YAAY;;AAEtD;AACA,OAAO,MAAMC,qBAAqB,GAAG,CAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EACrH,KAAK,EAAE,UAAU,EAAE,QAAQ,CAAE;AAE9B,MAAMC,gBAAgB,GAAG;AACxB;AACA;AACA;AACA;AACAH,eAAe,CAAE,yBAA0B,CAAC,EAC5CA,eAAe,CAAE,6BAA8B,CAAC;AAChD;AACAC,YAAY,CAAE,aAAc,CAAC,EAC7BD,eAAe,CAAE,0BAA2B,CAAC,EAC7CA,eAAe,CAAE,mBAAoB,CAAC,EACtCA,eAAe,CAAE,kBAAmB,CAAC,EACrCA,eAAe,CAAE,wBAAyB,CAAC,EAC3CA,eAAe,CAAE,wBAAyB,CAAC,EAC3CA,eAAe,CAAE,4BAA6B,CAAC,EAC/CA,eAAe,CAAE,mBAAoB,CAAC,EACtCA,eAAe,CAAE,4BAA6B,CAAC;AAC/C;AACAA,eAAe,CAAE,iBAAkB,CAAC,EACpCA,eAAe,CAAE,iBAAkB,CAAC,EACpCA,eAAe,CAAE,8BAA+B,CAAC,EACjDA,eAAe,CAAE,qBAAsB,CAAC,EACxCA,eAAe,CAAE,uBAAwB,CAAC,EAC1CA,eAAe,CAAE,UAAW,CAAC;AAC7B;AACA;AACD;AACA;AACCD,cAAc,CAAE,MAAO,CAAC,EACxBA,cAAc,CAAE,YAAa,CAAC,EAC9BA,cAAc,CAAE,QAAS,CAAC,EAC1BA,cAAc,CAAE,MAAO,CAAC;AACxB;AACAA,cAAc,CAAE,MAAO,CAAC,EACxBA,cAAc,CAAE,QAAS,CAAC,EAC1BA,cAAc,CAAE,OAAQ,CAAC,EACzBA,cAAc,CAAE,KAAM,CAAC,EACvBA,cAAc,CAAE,MAAO,CAAC,EACxBA,cAAc,CAAE,MAAO,CAAC,EACxBA,cAAc,CAAE,MAAO,CAAC,EACxBA,cAAc,CAAE,OAAQ,CAAC,EACzBA,cAAc,CAAE,UAAW,CAAC,EAC5BA,cAAc,CAAE,QAAS,CAAC,EAC1BA,cAAc,CAAE,QAAS,CAAC,EAC1BA,cAAc,CAAE,KAAM,CAAC,EACvBA,cAAc,CAAE,UAAW,CAAC,EAC5BA,cAAc,CAAE,GAAI,CAAC,EACrBA,cAAc,CAAE,MAAO,CAAC,EACxBA,cAAc,CAAE,QAAS,CAAC,EAC1BA,cAAc,CAAE,MAAO,CAAC,EACxBA,cAAc,CAAE,OAAQ,CAAC,EACzBA,cAAc,CAAE,KAAM,CAAC,EACvBA,cAAc,CAAE,UAAW,CAAC,EAC5BA,cAAc,CAAE,UAAW,CAAC,EAC5BA,cAAc,CAAE,OAAQ,CAAC,EACzBA,cAAc,CAAE,KAAM,CAAC,EACvBA,cAAc,CAAE,UAAW,CAAC,EAC5BA,cAAc,CAAE,MAAO,CAAC,EACxBA,cAAc,CAAE,MAAO,CAAC,EACxBA,cAAc,CAAE,KAAM,CAAC,EACvBA,cAAc,CAAE,UAAW,CAAC,EAC5BA,cAAc,CAAE,QAAS,CAAC,CAC1B;AAED,eAAeI,gBAAgB","ignoreList":[]}
@@ -0,0 +1,123 @@
1
+ import isPhrasingContent from "./isPhrasingContent";
2
+ import { Paragraph } from "../../structure";
3
+ import { isEmpty } from "lodash";
4
+ import SourceCodeLocation from "../../structure/SourceCodeLocation";
5
+
6
+ /**
7
+ * Checks whether a node is inter-element whitespace.
8
+ *
9
+ * @see https://html.spec.whatwg.org/#inter-element-whitespace
10
+ *
11
+ * @param {Object} node The node to check.
12
+ *
13
+ * @returns {boolean} Whether the node is inter-element whitespace.
14
+ */
15
+ function isInterElementWhitespace(node) {
16
+ return node.name === "#text" && node.value && node.value.match(/^[\n\s]+$/g);
17
+ }
18
+
19
+ /**
20
+ * Checks whether a node has any children.
21
+ *
22
+ * @param {Object} node The node to check.
23
+ *
24
+ * @returns {boolean} Whether the node has any children.
25
+ */
26
+ function hasChildren(node) {
27
+ return node && node.childNodes.length > 0;
28
+ }
29
+
30
+ /**
31
+ * Updates the source code location of an implicit paragraph based on its children.
32
+ * @param {Paragraph} implicitParagraph The implicit paragraph to update.
33
+ * @returns {void}
34
+ */
35
+ const updateImplicitParagraphLocation = implicitParagraph => {
36
+ const [firstChild] = implicitParagraph.childNodes.slice(0);
37
+ const [lastChild] = implicitParagraph.childNodes.slice(-1);
38
+ if ((firstChild.sourceCodeRange || firstChild.sourceCodeLocation) && (lastChild.sourceCodeRange || lastChild.sourceCodeLocation)) {
39
+ const startOffset = firstChild.sourceCodeRange ? firstChild.sourceCodeRange.startOffset : firstChild.sourceCodeLocation.startOffset;
40
+ const endOffset = lastChild.sourceCodeRange ? lastChild.sourceCodeRange.endOffset : lastChild.sourceCodeLocation.endOffset;
41
+ implicitParagraph.sourceCodeLocation = new SourceCodeLocation({
42
+ startOffset: startOffset,
43
+ endOffset: endOffset
44
+ });
45
+ }
46
+ };
47
+
48
+ /**
49
+ * Checks whether the current node is part of a double line break.
50
+ * @param {Node} currentNode The current node.
51
+ * @param {Node} prevNode The previous node (if available).
52
+ * @param {Node} nextNode The next node (if available).
53
+ * @returns {boolean} Whether the current node is part of a double line break
54
+ */
55
+ const isPartOfDoubleBreak = (currentNode, prevNode, nextNode) => {
56
+ const prevNodeIsBreak = prevNode && prevNode.name === "br";
57
+ const nextNodeIsBreak = nextNode && nextNode.name === "br";
58
+ return currentNode.name === "br" && (prevNodeIsBreak || nextNodeIsBreak);
59
+ };
60
+
61
+ /**
62
+ * Combines series of consecutive phrasing content ("inline" tags like `a` and `span`, and text) into implicit paragraphs.
63
+ *
64
+ * @see https://html.spec.whatwg.org/#paragraphs
65
+ *
66
+ * @param {Array} nodes The nodes to combine where able to.
67
+ * @param {Object} parentSourceCodeLocation This parent node's location in the source code, from parse5.
68
+ *
69
+ * @returns {Array} The combined nodes.
70
+ */
71
+ function combineIntoImplicitParagraphs(nodes, parentSourceCodeLocation = {}) {
72
+ const newNodes = [];
73
+ let currentSourceCodeLocation = {};
74
+ // For implicit paragraphs, strip off the start and end tag information from the parent's source code location.
75
+ if (isEmpty(parentSourceCodeLocation)) {
76
+ const firstNode = nodes[0];
77
+ const lastNode = nodes[nodes.length - 1];
78
+ if (firstNode && lastNode && firstNode.sourceCodeLocation && lastNode.sourceCodeLocation) {
79
+ currentSourceCodeLocation = new SourceCodeLocation({
80
+ startOffset: firstNode.sourceCodeLocation.startOffset,
81
+ endOffset: lastNode.sourceCodeLocation.endOffset
82
+ });
83
+ }
84
+ } else {
85
+ currentSourceCodeLocation = new SourceCodeLocation({
86
+ startOffset: parentSourceCodeLocation.startTag ? parentSourceCodeLocation.startTag.endOffset : parentSourceCodeLocation.startOffset,
87
+ endOffset: parentSourceCodeLocation.endTag ? parentSourceCodeLocation.endTag.startOffset : parentSourceCodeLocation.endOffset
88
+ });
89
+ }
90
+ let implicitParagraph = Paragraph.createImplicit({}, [], currentSourceCodeLocation);
91
+ nodes.forEach((node, index, allNodes) => {
92
+ const prevNode = 0 !== index && allNodes[index - 1];
93
+ const nextNode = allNodes.length - 1 !== index && allNodes[index + 1];
94
+ if (isPhrasingContent(node.name) && !isInterElementWhitespace(node) && !isPartOfDoubleBreak(node, prevNode, nextNode)) {
95
+ // If the node is phrasing content, add it to the implicit paragraph.
96
+ implicitParagraph.childNodes.push(node);
97
+ } else {
98
+ // If the node is not phrasing content, this means that the implicit paragraph has ended.
99
+ if (hasChildren(implicitParagraph)) {
100
+ // If the implicit paragraph has children this means an implicit paragraph was created:
101
+ // end the current implicit paragraph and start a new one.
102
+
103
+ // But before pushing, we need to update the source code location of the implicit paragraph based on its child nodes.
104
+ updateImplicitParagraphLocation(implicitParagraph);
105
+
106
+ // Update the startOffset of the next implicit paragraph to be the end of the current node.
107
+ if (node.sourceCodeLocation) {
108
+ currentSourceCodeLocation.startOffset = node.sourceCodeLocation.endOffset;
109
+ }
110
+ newNodes.push(implicitParagraph);
111
+ implicitParagraph = Paragraph.createImplicit({}, [], currentSourceCodeLocation);
112
+ }
113
+ newNodes.push(node);
114
+ }
115
+ });
116
+ if (hasChildren(implicitParagraph)) {
117
+ updateImplicitParagraphLocation(implicitParagraph);
118
+ newNodes.push(implicitParagraph);
119
+ }
120
+ return newNodes;
121
+ }
122
+ export default combineIntoImplicitParagraphs;
123
+ //# sourceMappingURL=combineIntoImplicitParagraphs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"combineIntoImplicitParagraphs.js","names":["isPhrasingContent","Paragraph","isEmpty","SourceCodeLocation","isInterElementWhitespace","node","name","value","match","hasChildren","childNodes","length","updateImplicitParagraphLocation","implicitParagraph","firstChild","slice","lastChild","sourceCodeRange","sourceCodeLocation","startOffset","endOffset","isPartOfDoubleBreak","currentNode","prevNode","nextNode","prevNodeIsBreak","nextNodeIsBreak","combineIntoImplicitParagraphs","nodes","parentSourceCodeLocation","newNodes","currentSourceCodeLocation","firstNode","lastNode","startTag","endTag","createImplicit","forEach","index","allNodes","push"],"sources":["../../../../src/parse/build/private/combineIntoImplicitParagraphs.js"],"sourcesContent":["import isPhrasingContent from \"./isPhrasingContent\";\nimport { Paragraph } from \"../../structure\";\nimport { isEmpty } from \"lodash\";\nimport SourceCodeLocation from \"../../structure/SourceCodeLocation\";\n\n/**\n * Checks whether a node is inter-element whitespace.\n *\n * @see https://html.spec.whatwg.org/#inter-element-whitespace\n *\n * @param {Object} node The node to check.\n *\n * @returns {boolean} Whether the node is inter-element whitespace.\n */\nfunction isInterElementWhitespace( node ) {\n\treturn node.name === \"#text\" && node.value && node.value.match( /^[\\n\\s]+$/g );\n}\n\n/**\n * Checks whether a node has any children.\n *\n * @param {Object} node The node to check.\n *\n * @returns {boolean} Whether the node has any children.\n */\nfunction hasChildren( node ) {\n\treturn node && node.childNodes.length > 0;\n}\n\n/**\n * Updates the source code location of an implicit paragraph based on its children.\n * @param {Paragraph} implicitParagraph The implicit paragraph to update.\n * @returns {void}\n */\nconst updateImplicitParagraphLocation = ( implicitParagraph ) => {\n\tconst [ firstChild ] = implicitParagraph.childNodes.slice( 0 );\n\tconst [ lastChild ] = implicitParagraph.childNodes.slice( -1 );\n\tif ( ( firstChild.sourceCodeRange || firstChild.sourceCodeLocation ) && ( lastChild.sourceCodeRange || lastChild.sourceCodeLocation ) ) {\n\t\tconst startOffset = firstChild.sourceCodeRange ? firstChild.sourceCodeRange.startOffset : firstChild.sourceCodeLocation.startOffset;\n\t\tconst endOffset = lastChild.sourceCodeRange ? lastChild.sourceCodeRange.endOffset : lastChild.sourceCodeLocation.endOffset;\n\t\timplicitParagraph.sourceCodeLocation = new SourceCodeLocation( { startOffset: startOffset, endOffset: endOffset } );\n\t}\n};\n\n/**\n * Checks whether the current node is part of a double line break.\n * @param {Node} currentNode The current node.\n * @param {Node} prevNode The previous node (if available).\n * @param {Node} nextNode The next node (if available).\n * @returns {boolean} Whether the current node is part of a double line break\n */\nconst isPartOfDoubleBreak = ( currentNode, prevNode, nextNode ) => {\n\tconst prevNodeIsBreak = prevNode && prevNode.name === \"br\";\n\tconst nextNodeIsBreak = nextNode && nextNode.name === \"br\";\n\treturn currentNode.name === \"br\" && ( prevNodeIsBreak || nextNodeIsBreak );\n};\n\n/**\n * Combines series of consecutive phrasing content (\"inline\" tags like `a` and `span`, and text) into implicit paragraphs.\n *\n * @see https://html.spec.whatwg.org/#paragraphs\n *\n * @param {Array} nodes The nodes to combine where able to.\n * @param {Object} parentSourceCodeLocation This parent node's location in the source code, from parse5.\n *\n * @returns {Array} The combined nodes.\n */\nfunction combineIntoImplicitParagraphs( nodes, parentSourceCodeLocation = {} ) {\n\tconst newNodes = [];\n\tlet currentSourceCodeLocation = {};\n\t// For implicit paragraphs, strip off the start and end tag information from the parent's source code location.\n\tif ( isEmpty( parentSourceCodeLocation ) ) {\n\t\tconst firstNode = nodes[ 0 ];\n\t\tconst lastNode = nodes[ nodes.length - 1 ];\n\n\t\tif ( firstNode && lastNode && firstNode.sourceCodeLocation && lastNode.sourceCodeLocation ) {\n\t\t\tcurrentSourceCodeLocation = new SourceCodeLocation( {\n\t\t\t\tstartOffset: firstNode.sourceCodeLocation.startOffset,\n\t\t\t\tendOffset: lastNode.sourceCodeLocation.endOffset,\n\t\t\t} );\n\t\t}\n\t} else {\n\t\tcurrentSourceCodeLocation = new SourceCodeLocation( {\n\t\t\tstartOffset: parentSourceCodeLocation.startTag\n\t\t\t\t? parentSourceCodeLocation.startTag.endOffset\n\t\t\t\t: parentSourceCodeLocation.startOffset,\n\t\t\tendOffset: parentSourceCodeLocation.endTag\n\t\t\t\t? parentSourceCodeLocation.endTag.startOffset\n\t\t\t\t: parentSourceCodeLocation.endOffset,\n\t\t} );\n\t}\n\n\tlet implicitParagraph = Paragraph.createImplicit( {}, [], currentSourceCodeLocation );\n\tnodes.forEach( ( node, index, allNodes ) => {\n\t\tconst prevNode = 0 !== index && allNodes[ index - 1 ];\n\t\tconst nextNode = allNodes.length - 1 !== index && allNodes[ index + 1 ];\n\n\t\tif ( isPhrasingContent( node.name ) && ! isInterElementWhitespace( node ) && ! isPartOfDoubleBreak( node, prevNode, nextNode ) ) {\n\t\t\t// If the node is phrasing content, add it to the implicit paragraph.\n\t\t\timplicitParagraph.childNodes.push( node );\n\t\t} else {\n\t\t\t// If the node is not phrasing content, this means that the implicit paragraph has ended.\n\t\t\tif ( hasChildren( implicitParagraph ) ) {\n\t\t\t\t// If the implicit paragraph has children this means an implicit paragraph was created:\n\t\t\t\t// end the current implicit paragraph and start a new one.\n\n\t\t\t\t// But before pushing, we need to update the source code location of the implicit paragraph based on its child nodes.\n\t\t\t\tupdateImplicitParagraphLocation( implicitParagraph );\n\n\t\t\t\t// Update the startOffset of the next implicit paragraph to be the end of the current node.\n\t\t\t\tif ( node.sourceCodeLocation ) {\n\t\t\t\t\tcurrentSourceCodeLocation.startOffset = node.sourceCodeLocation.endOffset;\n\t\t\t\t}\n\n\t\t\t\tnewNodes.push( implicitParagraph );\n\t\t\t\timplicitParagraph = Paragraph.createImplicit( {}, [], currentSourceCodeLocation );\n\t\t\t}\n\t\t\tnewNodes.push( node );\n\t\t}\n\t} );\n\n\tif ( hasChildren( implicitParagraph ) ) {\n\t\tupdateImplicitParagraphLocation( implicitParagraph );\n\n\t\tnewNodes.push( implicitParagraph );\n\t}\n\treturn newNodes;\n}\n\nexport default combineIntoImplicitParagraphs;\n"],"mappings":"AAAA,OAAOA,iBAAiB;AACxB,SAASC,SAAS;AAClB,SAASC,OAAO,QAAQ,QAAQ;AAChC,OAAOC,kBAAkB;;AAEzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,wBAAwBA,CAAEC,IAAI,EAAG;EACzC,OAAOA,IAAI,CAACC,IAAI,KAAK,OAAO,IAAID,IAAI,CAACE,KAAK,IAAIF,IAAI,CAACE,KAAK,CAACC,KAAK,CAAE,YAAa,CAAC;AAC/E;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,WAAWA,CAAEJ,IAAI,EAAG;EAC5B,OAAOA,IAAI,IAAIA,IAAI,CAACK,UAAU,CAACC,MAAM,GAAG,CAAC;AAC1C;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAMC,+BAA+B,GAAKC,iBAAiB,IAAM;EAChE,MAAM,CAAEC,UAAU,CAAE,GAAGD,iBAAiB,CAACH,UAAU,CAACK,KAAK,CAAE,CAAE,CAAC;EAC9D,MAAM,CAAEC,SAAS,CAAE,GAAGH,iBAAiB,CAACH,UAAU,CAACK,KAAK,CAAE,CAAC,CAAE,CAAC;EAC9D,IAAK,CAAED,UAAU,CAACG,eAAe,IAAIH,UAAU,CAACI,kBAAkB,MAAQF,SAAS,CAACC,eAAe,IAAID,SAAS,CAACE,kBAAkB,CAAE,EAAG;IACvI,MAAMC,WAAW,GAAGL,UAAU,CAACG,eAAe,GAAGH,UAAU,CAACG,eAAe,CAACE,WAAW,GAAGL,UAAU,CAACI,kBAAkB,CAACC,WAAW;IACnI,MAAMC,SAAS,GAAGJ,SAAS,CAACC,eAAe,GAAGD,SAAS,CAACC,eAAe,CAACG,SAAS,GAAGJ,SAAS,CAACE,kBAAkB,CAACE,SAAS;IAC1HP,iBAAiB,CAACK,kBAAkB,GAAG,IAAIf,kBAAkB,CAAE;MAAEgB,WAAW,EAAEA,WAAW;MAAEC,SAAS,EAAEA;IAAU,CAAE,CAAC;EACpH;AACD,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,mBAAmB,GAAGA,CAAEC,WAAW,EAAEC,QAAQ,EAAEC,QAAQ,KAAM;EAClE,MAAMC,eAAe,GAAGF,QAAQ,IAAIA,QAAQ,CAACjB,IAAI,KAAK,IAAI;EAC1D,MAAMoB,eAAe,GAAGF,QAAQ,IAAIA,QAAQ,CAAClB,IAAI,KAAK,IAAI;EAC1D,OAAOgB,WAAW,CAAChB,IAAI,KAAK,IAAI,KAAMmB,eAAe,IAAIC,eAAe,CAAE;AAC3E,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,6BAA6BA,CAAEC,KAAK,EAAEC,wBAAwB,GAAG,CAAC,CAAC,EAAG;EAC9E,MAAMC,QAAQ,GAAG,EAAE;EACnB,IAAIC,yBAAyB,GAAG,CAAC,CAAC;EAClC;EACA,IAAK7B,OAAO,CAAE2B,wBAAyB,CAAC,EAAG;IAC1C,MAAMG,SAAS,GAAGJ,KAAK,CAAE,CAAC,CAAE;IAC5B,MAAMK,QAAQ,GAAGL,KAAK,CAAEA,KAAK,CAACjB,MAAM,GAAG,CAAC,CAAE;IAE1C,IAAKqB,SAAS,IAAIC,QAAQ,IAAID,SAAS,CAACd,kBAAkB,IAAIe,QAAQ,CAACf,kBAAkB,EAAG;MAC3Fa,yBAAyB,GAAG,IAAI5B,kBAAkB,CAAE;QACnDgB,WAAW,EAAEa,SAAS,CAACd,kBAAkB,CAACC,WAAW;QACrDC,SAAS,EAAEa,QAAQ,CAACf,kBAAkB,CAACE;MACxC,CAAE,CAAC;IACJ;EACD,CAAC,MAAM;IACNW,yBAAyB,GAAG,IAAI5B,kBAAkB,CAAE;MACnDgB,WAAW,EAAEU,wBAAwB,CAACK,QAAQ,GAC3CL,wBAAwB,CAACK,QAAQ,CAACd,SAAS,GAC3CS,wBAAwB,CAACV,WAAW;MACvCC,SAAS,EAAES,wBAAwB,CAACM,MAAM,GACvCN,wBAAwB,CAACM,MAAM,CAAChB,WAAW,GAC3CU,wBAAwB,CAACT;IAC7B,CAAE,CAAC;EACJ;EAEA,IAAIP,iBAAiB,GAAGZ,SAAS,CAACmC,cAAc,CAAE,CAAC,CAAC,EAAE,EAAE,EAAEL,yBAA0B,CAAC;EACrFH,KAAK,CAACS,OAAO,CAAE,CAAEhC,IAAI,EAAEiC,KAAK,EAAEC,QAAQ,KAAM;IAC3C,MAAMhB,QAAQ,GAAG,CAAC,KAAKe,KAAK,IAAIC,QAAQ,CAAED,KAAK,GAAG,CAAC,CAAE;IACrD,MAAMd,QAAQ,GAAGe,QAAQ,CAAC5B,MAAM,GAAG,CAAC,KAAK2B,KAAK,IAAIC,QAAQ,CAAED,KAAK,GAAG,CAAC,CAAE;IAEvE,IAAKtC,iBAAiB,CAAEK,IAAI,CAACC,IAAK,CAAC,IAAI,CAAEF,wBAAwB,CAAEC,IAAK,CAAC,IAAI,CAAEgB,mBAAmB,CAAEhB,IAAI,EAAEkB,QAAQ,EAAEC,QAAS,CAAC,EAAG;MAChI;MACAX,iBAAiB,CAACH,UAAU,CAAC8B,IAAI,CAAEnC,IAAK,CAAC;IAC1C,CAAC,MAAM;MACN;MACA,IAAKI,WAAW,CAAEI,iBAAkB,CAAC,EAAG;QACvC;QACA;;QAEA;QACAD,+BAA+B,CAAEC,iBAAkB,CAAC;;QAEpD;QACA,IAAKR,IAAI,CAACa,kBAAkB,EAAG;UAC9Ba,yBAAyB,CAACZ,WAAW,GAAGd,IAAI,CAACa,kBAAkB,CAACE,SAAS;QAC1E;QAEAU,QAAQ,CAACU,IAAI,CAAE3B,iBAAkB,CAAC;QAClCA,iBAAiB,GAAGZ,SAAS,CAACmC,cAAc,CAAE,CAAC,CAAC,EAAE,EAAE,EAAEL,yBAA0B,CAAC;MAClF;MACAD,QAAQ,CAACU,IAAI,CAAEnC,IAAK,CAAC;IACtB;EACD,CAAE,CAAC;EAEH,IAAKI,WAAW,CAAEI,iBAAkB,CAAC,EAAG;IACvCD,+BAA+B,CAAEC,iBAAkB,CAAC;IAEpDiB,QAAQ,CAACU,IAAI,CAAE3B,iBAAkB,CAAC;EACnC;EACA,OAAOiB,QAAQ;AAChB;AAEA,eAAeH,6BAA6B","ignoreList":[]}
@@ -0,0 +1,32 @@
1
+ import { isEmpty } from "lodash";
2
+ import { canBeChildOfParagraph as excludeFromAnalysis } from "./alwaysFilterElements";
3
+
4
+ /**
5
+ * Removes all child nodes from nodes that we want to exclude from the analysis, and that can be children of a paragraph
6
+ * or heading.
7
+ *
8
+ * The child nodes are removed because we don't want to include any text between those nodes in the analysis.
9
+ * If we don't remove them here, the text between those nodes will be considered as part of the paragraph's
10
+ * inner text and will be tokenized.
11
+ *
12
+ * These changes are only necessary for elements that can be children of paragraphs or headings. For example, we also
13
+ * don't want to analyze content in between `blockquote` tags, but these cannot be children of paragraphs/headings.
14
+ * Because of that, they wouldn't interfere with tokenizing the text inside paragraphs and headings and calculating
15
+ * the positions.
16
+ *
17
+ * @param {Node} node The node to check.
18
+ *
19
+ * @returns {Node} The filtered out node that's ready to be tokenized.
20
+ */
21
+ export function filterBeforeTokenizing(node) {
22
+ if (excludeFromAnalysis.includes(node.name)) {
23
+ node.childNodes = [];
24
+ }
25
+
26
+ // Recursively filters the node's children.
27
+ if (!isEmpty(node.childNodes)) {
28
+ node.childNodes.map(filterBeforeTokenizing);
29
+ }
30
+ return node;
31
+ }
32
+ //# sourceMappingURL=filterBeforeTokenizing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterBeforeTokenizing.js","names":["isEmpty","canBeChildOfParagraph","excludeFromAnalysis","filterBeforeTokenizing","node","includes","name","childNodes","map"],"sources":["../../../../src/parse/build/private/filterBeforeTokenizing.js"],"sourcesContent":["import { isEmpty } from \"lodash\";\nimport { canBeChildOfParagraph as excludeFromAnalysis } from \"./alwaysFilterElements\";\n\n/**\n * Removes all child nodes from nodes that we want to exclude from the analysis, and that can be children of a paragraph\n * or heading.\n *\n * The child nodes are removed because we don't want to include any text between those nodes in the analysis.\n * If we don't remove them here, the text between those nodes will be considered as part of the paragraph's\n * inner text and will be tokenized.\n *\n * These changes are only necessary for elements that can be children of paragraphs or headings. For example, we also\n * don't want to analyze content in between `blockquote` tags, but these cannot be children of paragraphs/headings.\n * Because of that, they wouldn't interfere with tokenizing the text inside paragraphs and headings and calculating\n * the positions.\n *\n * @param {Node} node The node to check.\n *\n * @returns {Node} The filtered out node that's ready to be tokenized.\n */\nexport function filterBeforeTokenizing( node ) {\n\tif ( excludeFromAnalysis.includes( node.name ) ) {\n\t\tnode.childNodes = [];\n\t}\n\n\t// Recursively filters the node's children.\n\tif ( ! isEmpty( node.childNodes ) ) {\n\t\tnode.childNodes.map( filterBeforeTokenizing );\n\t}\n\n\treturn node;\n}\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,QAAQ;AAChC,SAASC,qBAAqB,IAAIC,mBAAmB;;AAErD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,sBAAsBA,CAAEC,IAAI,EAAG;EAC9C,IAAKF,mBAAmB,CAACG,QAAQ,CAAED,IAAI,CAACE,IAAK,CAAC,EAAG;IAChDF,IAAI,CAACG,UAAU,GAAG,EAAE;EACrB;;EAEA;EACA,IAAK,CAAEP,OAAO,CAAEI,IAAI,CAACG,UAAW,CAAC,EAAG;IACnCH,IAAI,CAACG,UAAU,CAACC,GAAG,CAAEL,sBAAuB,CAAC;EAC9C;EAEA,OAAOC,IAAI;AACZ","ignoreList":[]}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Filter helpers for the html tree filter.
3
+ * All helpers are functions that return a callback with the element as the only argument.
4
+ */
5
+
6
+ /**
7
+ * Creates a callback that checks if an element has a specific name.
8
+ *
9
+ * @param {string} name The name to check.
10
+ *
11
+ * @returns {function(*)} A function that returns true if the element has a specific name.
12
+ */
13
+ export function elementHasName(name) {
14
+ return element => {
15
+ return element.name === name;
16
+ };
17
+ }
18
+
19
+ /**
20
+ * Creates a callback that checks the class of an element.
21
+ *
22
+ * @param {string} className The classname to filter out.
23
+ *
24
+ * @returns {function(*): boolean} A function that returns true if a Node has a certain class.
25
+ */
26
+ export function elementHasClass(className) {
27
+ return blockElement => {
28
+ return !!blockElement.attributes.class && blockElement.attributes.class.has(className);
29
+ };
30
+ }
31
+
32
+ /**
33
+ * Creates a callback that checks if an element has a certain ID.
34
+ *
35
+ * @param {string} id The ID we want to check against.
36
+ *
37
+ * @returns {function(*): boolean} A function that returns true if an element has a certain ID.
38
+ */
39
+ export function elementHasID(id) {
40
+ return element => {
41
+ return element.attributes.id === id;
42
+ };
43
+ }
44
+ //# sourceMappingURL=filterHelpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterHelpers.js","names":["elementHasName","name","element","elementHasClass","className","blockElement","attributes","class","has","elementHasID","id"],"sources":["../../../../src/parse/build/private/filterHelpers.js"],"sourcesContent":["/**\n * Filter helpers for the html tree filter.\n * All helpers are functions that return a callback with the element as the only argument.\n */\n\n\n/**\n * Creates a callback that checks if an element has a specific name.\n *\n * @param {string} name The name to check.\n *\n * @returns {function(*)} A function that returns true if the element has a specific name.\n */\nexport function elementHasName( name ) {\n\treturn ( element ) => {\n\t\treturn element.name === name;\n\t};\n}\n\n/**\n * Creates a callback that checks the class of an element.\n *\n * @param {string} className The classname to filter out.\n *\n * @returns {function(*): boolean} A function that returns true if a Node has a certain class.\n */\nexport function elementHasClass( className ) {\n\treturn ( blockElement ) => {\n\t\treturn !! blockElement.attributes.class && blockElement.attributes.class.has( className );\n\t};\n}\n\n/**\n * Creates a callback that checks if an element has a certain ID.\n *\n * @param {string} id The ID we want to check against.\n *\n * @returns {function(*): boolean} A function that returns true if an element has a certain ID.\n */\nexport function elementHasID( id ) {\n\treturn ( element ) => {\n\t\treturn element.attributes.id === id;\n\t};\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASA,cAAcA,CAAEC,IAAI,EAAG;EACtC,OAASC,OAAO,IAAM;IACrB,OAAOA,OAAO,CAACD,IAAI,KAAKA,IAAI;EAC7B,CAAC;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,eAAeA,CAAEC,SAAS,EAAG;EAC5C,OAASC,YAAY,IAAM;IAC1B,OAAO,CAAC,CAAEA,YAAY,CAACC,UAAU,CAACC,KAAK,IAAIF,YAAY,CAACC,UAAU,CAACC,KAAK,CAACC,GAAG,CAAEJ,SAAU,CAAC;EAC1F,CAAC;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASK,YAAYA,CAAEC,EAAE,EAAG;EAClC,OAASR,OAAO,IAAM;IACrB,OAAOA,OAAO,CAACI,UAAU,CAACI,EAAE,KAAKA,EAAE;EACpC,CAAC;AACF","ignoreList":[]}
@@ -0,0 +1,42 @@
1
+ import { Paragraph } from "../../structure";
2
+
3
+ /**
4
+ * Checks if a node should be kept or discarded.
5
+ * @param {Node} node A node.
6
+ * @param {Function[]} filters An array of filter callbacks.
7
+ * @returns {boolean} True if the node should be kept, false if the node should be discarded.
8
+ */
9
+ function shouldRemoveNode(node, filters) {
10
+ // Always keep text nodes.
11
+ if (node.name === "#text") {
12
+ return false;
13
+ }
14
+
15
+ // If any of the filters returns true, the node will be discarded.
16
+ return filters.some(filter => filter(node));
17
+ }
18
+
19
+ /**
20
+ * A recursive function that removes all nodes based on an array of filters.
21
+ * @param {Node} node A node. (Could be the entire tree.)
22
+ * @param {Function[]} filters An array of callbacks. If a callback returns true, the node is discarded.
23
+ * @returns {Node|undefined} A Node with all undesired subtrees removed.
24
+ */
25
+ export default function filterTree(node, filters) {
26
+ // Returns undefined when the node should be disregarded.
27
+ if (shouldRemoveNode(node, filters)) {
28
+ return;
29
+ }
30
+
31
+ // Recursively filters the node's children.
32
+ if (node.childNodes) {
33
+ node.childNodes = node.childNodes.filter(childNode => filterTree(childNode, filters));
34
+
35
+ // Drops implicit paragraphs if all their child nodes have been removed.
36
+ if (node.childNodes.length === 0 && node instanceof Paragraph && node.isImplicit) {
37
+ return;
38
+ }
39
+ }
40
+ return node;
41
+ }
42
+ //# sourceMappingURL=filterTree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterTree.js","names":["Paragraph","shouldRemoveNode","node","filters","name","some","filter","filterTree","childNodes","childNode","length","isImplicit"],"sources":["../../../../src/parse/build/private/filterTree.js"],"sourcesContent":["import { Paragraph } from \"../../structure\";\n\n/**\n * Checks if a node should be kept or discarded.\n * @param {Node} \t\tnode \t\tA node.\n * @param {Function[]} \tfilters \tAn array of filter callbacks.\n * @returns {boolean} True if the node should be kept, false if the node should be discarded.\n */\nfunction shouldRemoveNode( node, filters ) {\n\t// Always keep text nodes.\n\tif ( node.name === \"#text\" ) {\n\t\treturn false;\n\t}\n\n\t// If any of the filters returns true, the node will be discarded.\n\treturn filters.some( filter => filter( node ) );\n}\n\n/**\n * A recursive function that removes all nodes based on an array of filters.\n * @param {Node} \t\tnode \t\tA node. (Could be the entire tree.)\n * @param {Function[]} \tfilters \tAn array of callbacks. If a callback returns true, the node is discarded.\n * @returns {Node|undefined} A Node with all undesired subtrees removed.\n */\nexport default function filterTree( node, filters ) {\n\t// Returns undefined when the node should be disregarded.\n\tif ( shouldRemoveNode( node, filters ) ) {\n\t\treturn;\n\t}\n\n\t// Recursively filters the node's children.\n\tif ( node.childNodes ) {\n\t\tnode.childNodes = node.childNodes.filter( childNode => filterTree( childNode, filters ) );\n\n\t\t// Drops implicit paragraphs if all their child nodes have been removed.\n\t\tif ( node.childNodes.length === 0 && node instanceof Paragraph && node.isImplicit ) {\n\t\t\treturn;\n\t\t}\n\t}\n\n\treturn node;\n}\n"],"mappings":"AAAA,SAASA,SAAS;;AAElB;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,gBAAgBA,CAAEC,IAAI,EAAEC,OAAO,EAAG;EAC1C;EACA,IAAKD,IAAI,CAACE,IAAI,KAAK,OAAO,EAAG;IAC5B,OAAO,KAAK;EACb;;EAEA;EACA,OAAOD,OAAO,CAACE,IAAI,CAAEC,MAAM,IAAIA,MAAM,CAAEJ,IAAK,CAAE,CAAC;AAChD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASK,UAAUA,CAAEL,IAAI,EAAEC,OAAO,EAAG;EACnD;EACA,IAAKF,gBAAgB,CAAEC,IAAI,EAAEC,OAAQ,CAAC,EAAG;IACxC;EACD;;EAEA;EACA,IAAKD,IAAI,CAACM,UAAU,EAAG;IACtBN,IAAI,CAACM,UAAU,GAAGN,IAAI,CAACM,UAAU,CAACF,MAAM,CAAEG,SAAS,IAAIF,UAAU,CAAEE,SAAS,EAAEN,OAAQ,CAAE,CAAC;;IAEzF;IACA,IAAKD,IAAI,CAACM,UAAU,CAACE,MAAM,KAAK,CAAC,IAAIR,IAAI,YAAYF,SAAS,IAAIE,IAAI,CAACS,UAAU,EAAG;MACnF;IACD;EACD;EAEA,OAAOT,IAAI;AACZ","ignoreList":[]}