axyseo 2.0.0-alpha.0.0.4 → 2.0.0-alpha.0.0.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/components/RelatedKeywordsDescription.js +38 -0
- package/build/components/RelatedKeywordsDescription.js.map +1 -0
- package/build/components/RelatedKeywordsDescription.scss +34 -0
- package/build/config/diacritics.js +1 -7
- package/build/config/diacritics.js.map +1 -1
- package/build/config/getTransliterations.js +6 -14
- package/build/config/getTransliterations.js.map +1 -1
- package/build/config/transliterationsWPstyle.js +5 -12
- package/build/config/transliterationsWPstyle.js.map +1 -1
- package/build/config/wordBoundaries.js +1 -7
- package/build/config/wordBoundaries.js.map +1 -1
- package/build/config/wordBoundariesWithoutPunctuation.js +2 -8
- package/build/config/wordBoundariesWithoutPunctuation.js.map +1 -1
- package/build/const/analysis.js +5 -11
- package/build/const/analysis.js.map +1 -1
- package/build/errors/invalidType.js +1 -8
- package/build/errors/invalidType.js.map +1 -1
- package/build/errors/missingArgument.js +1 -8
- package/build/errors/missingArgument.js.map +1 -1
- package/build/helpers/createMeasurementElement.js +1 -8
- package/build/helpers/createMeasurementElement.js.map +1 -1
- package/build/helpers/domManipulation.js +3 -8
- package/build/helpers/domManipulation.js.map +1 -1
- package/build/helpers/errors.js +5 -10
- package/build/helpers/errors.js.map +1 -1
- package/build/helpers/factory.js +7 -13
- package/build/helpers/factory.js.map +1 -1
- package/build/helpers/formatNumber.js +1 -7
- package/build/helpers/formatNumber.js.map +1 -1
- package/build/helpers/formatString.js +4 -9
- package/build/helpers/formatString.js.map +1 -1
- package/build/helpers/getLanguagesWithWordComplexity.js +1 -7
- package/build/helpers/getLanguagesWithWordComplexity.js.map +1 -1
- package/build/helpers/getLanguagesWithWordFormSupport.js +1 -7
- package/build/helpers/getLanguagesWithWordFormSupport.js.map +1 -1
- package/build/helpers/getWordComplexityConfig.js +9 -15
- package/build/helpers/getWordComplexityConfig.js.map +1 -1
- package/build/helpers/getWordComplexityHelper.js +9 -15
- package/build/helpers/getWordComplexityHelper.js.map +1 -1
- package/build/helpers/htmlEntities.js +6 -11
- package/build/helpers/htmlEntities.js.map +1 -1
- package/build/helpers/includesAny.js +3 -8
- package/build/helpers/includesAny.js.map +1 -1
- package/build/helpers/index.js +15 -72
- package/build/helpers/index.js.map +1 -1
- package/build/helpers/shortlinker/Shortlinker.js +1 -8
- package/build/helpers/shortlinker/Shortlinker.js.map +1 -1
- package/build/helpers/shortlinker/index.js +1 -16
- package/build/helpers/shortlinker/index.js.map +1 -1
- package/build/helpers/shortlinker/singleton.js +5 -13
- package/build/helpers/shortlinker/singleton.js.map +1 -1
- package/build/helpers/types.js +2 -9
- package/build/helpers/types.js.map +1 -1
- package/build/index.js +25 -87
- package/build/index.js.map +1 -1
- package/build/languageProcessing/AbstractResearcher.js +88 -95
- package/build/languageProcessing/AbstractResearcher.js.map +1 -1
- package/build/languageProcessing/helpers/highlighting/getMarkingsInSentence.js +3 -10
- package/build/languageProcessing/helpers/highlighting/getMarkingsInSentence.js.map +1 -1
- package/build/languageProcessing/helpers/html/getFieldsToMark.js +6 -11
- package/build/languageProcessing/helpers/html/getFieldsToMark.js.map +1 -1
- package/build/languageProcessing/helpers/html/getSubheadingTexts.js +3 -8
- package/build/languageProcessing/helpers/html/getSubheadingTexts.js.map +1 -1
- package/build/languageProcessing/helpers/html/getSubheadings.js +2 -12
- package/build/languageProcessing/helpers/html/getSubheadings.js.map +1 -1
- package/build/languageProcessing/helpers/html/html.js +9 -17
- package/build/languageProcessing/helpers/html/html.js.map +1 -1
- package/build/languageProcessing/helpers/html/htmlParser.js +3 -10
- package/build/languageProcessing/helpers/html/htmlParser.js.map +1 -1
- package/build/languageProcessing/helpers/html/matchParagraphs.js +7 -12
- package/build/languageProcessing/helpers/html/matchParagraphs.js.map +1 -1
- package/build/languageProcessing/helpers/html/normalizeHTML.js +4 -10
- package/build/languageProcessing/helpers/html/normalizeHTML.js.map +1 -1
- package/build/languageProcessing/helpers/image/getAltAttribute.js +3 -9
- package/build/languageProcessing/helpers/image/getAltAttribute.js.map +1 -1
- package/build/languageProcessing/helpers/image/getImagesInTree.js +1 -7
- package/build/languageProcessing/helpers/image/getImagesInTree.js.map +1 -1
- package/build/languageProcessing/helpers/image/imageInText.js +5 -12
- package/build/languageProcessing/helpers/image/imageInText.js.map +1 -1
- package/build/languageProcessing/helpers/index.js +5 -40
- package/build/languageProcessing/helpers/index.js.map +1 -1
- package/build/languageProcessing/helpers/language/getLanguage.js +1 -7
- package/build/languageProcessing/helpers/language/getLanguage.js.map +1 -1
- package/build/languageProcessing/helpers/link/checkNofollow.js +3 -10
- package/build/languageProcessing/helpers/link/checkNofollow.js.map +1 -1
- package/build/languageProcessing/helpers/link/getAnchorsFromText.js +1 -7
- package/build/languageProcessing/helpers/link/getAnchorsFromText.js.map +1 -1
- package/build/languageProcessing/helpers/link/getLinkType.js +7 -13
- package/build/languageProcessing/helpers/link/getLinkType.js.map +1 -1
- package/build/languageProcessing/helpers/match/findKeywordFormsInString.js +6 -13
- package/build/languageProcessing/helpers/match/findKeywordFormsInString.js.map +1 -1
- package/build/languageProcessing/helpers/match/isDoubleQuoted.js +4 -10
- package/build/languageProcessing/helpers/match/isDoubleQuoted.js.map +1 -1
- package/build/languageProcessing/helpers/match/matchTextWithArray.js +6 -12
- package/build/languageProcessing/helpers/match/matchTextWithArray.js.map +1 -1
- package/build/languageProcessing/helpers/match/matchTextWithTransliteration.js +16 -22
- package/build/languageProcessing/helpers/match/matchTextWithTransliteration.js.map +1 -1
- package/build/languageProcessing/helpers/match/matchTextWithWord.js +17 -23
- package/build/languageProcessing/helpers/match/matchTextWithWord.js.map +1 -1
- package/build/languageProcessing/helpers/match/matchWordFormsWithSentence.js +7 -14
- package/build/languageProcessing/helpers/match/matchWordFormsWithSentence.js.map +1 -1
- package/build/languageProcessing/helpers/match/processExactMatchRequest.js +3 -9
- package/build/languageProcessing/helpers/match/processExactMatchRequest.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/baseStemmer.js +1 -7
- package/build/languageProcessing/helpers/morphology/baseStemmer.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/buildFormRule.js +1 -7
- package/build/languageProcessing/helpers/morphology/buildFormRule.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/buildTopicStems.js +13 -23
- package/build/languageProcessing/helpers/morphology/buildTopicStems.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/createRulesFromArrays.js +2 -9
- package/build/languageProcessing/helpers/morphology/createRulesFromArrays.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/exceptionListHelpers.js +5 -13
- package/build/languageProcessing/helpers/morphology/exceptionListHelpers.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/findMatchingEndingInArray.js +1 -7
- package/build/languageProcessing/helpers/morphology/findMatchingEndingInArray.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/flattenSortLength.js +3 -8
- package/build/languageProcessing/helpers/morphology/flattenSortLength.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/getAllWordsFromPaper.js +12 -18
- package/build/languageProcessing/helpers/morphology/getAllWordsFromPaper.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/regexHelpers.js +3 -11
- package/build/languageProcessing/helpers/morphology/regexHelpers.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/stemHelpers.js +2 -9
- package/build/languageProcessing/helpers/morphology/stemHelpers.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/stemPrefixedFunctionWords.js +1 -7
- package/build/languageProcessing/helpers/morphology/stemPrefixedFunctionWords.js.map +1 -1
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/directPrecedenceException.js +5 -11
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/directPrecedenceException.js.map +1 -1
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/getClausesSplitOnStopWords.js +9 -15
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/getClausesSplitOnStopWords.js.map +1 -1
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/nonDirectParticiplePrecedenceException.js +9 -15
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/nonDirectParticiplePrecedenceException.js.map +1 -1
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/getClauses.js +28 -34
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/getClauses.js.map +1 -1
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/getIndicesWithRegex.js +1 -7
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/getIndicesWithRegex.js.map +1 -1
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/matchRegularParticiples.js +3 -8
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/matchRegularParticiples.js.map +1 -1
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/precedenceException.js +5 -11
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/precedenceException.js.map +1 -1
- package/build/languageProcessing/helpers/prominentWords/determineProminentWords.js +16 -28
- package/build/languageProcessing/helpers/prominentWords/determineProminentWords.js.map +1 -1
- package/build/languageProcessing/helpers/regex/createRegexFromArray.js +10 -16
- package/build/languageProcessing/helpers/regex/createRegexFromArray.js.map +1 -1
- package/build/languageProcessing/helpers/regex/createRegexFromDoubleArray.js +4 -10
- package/build/languageProcessing/helpers/regex/createRegexFromDoubleArray.js.map +1 -1
- package/build/languageProcessing/helpers/regex/createWordRegex.js +12 -18
- package/build/languageProcessing/helpers/regex/createWordRegex.js.map +1 -1
- package/build/languageProcessing/helpers/regex/matchStringWithRegex.js +1 -7
- package/build/languageProcessing/helpers/regex/matchStringWithRegex.js.map +1 -1
- package/build/languageProcessing/helpers/regex/searchAndReplaceWithOneRegex.js +1 -7
- package/build/languageProcessing/helpers/regex/searchAndReplaceWithOneRegex.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/doubleQuotes.js +1 -7
- package/build/languageProcessing/helpers/sanitize/doubleQuotes.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/filterShortcodesFromTree.js +3 -11
- package/build/languageProcessing/helpers/sanitize/filterShortcodesFromTree.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/mergeListItems.js +1 -7
- package/build/languageProcessing/helpers/sanitize/mergeListItems.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/parseSynonyms.js +5 -11
- package/build/languageProcessing/helpers/sanitize/parseSynonyms.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/quotes.js +4 -12
- package/build/languageProcessing/helpers/sanitize/quotes.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/removeEmailAddresses.js +1 -7
- package/build/languageProcessing/helpers/sanitize/removeEmailAddresses.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/removePunctuation.js +7 -13
- package/build/languageProcessing/helpers/sanitize/removePunctuation.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/removePunctuationExceptQuotes.js +1 -7
- package/build/languageProcessing/helpers/sanitize/removePunctuationExceptQuotes.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/removeSentenceTerminators.js +1 -7
- package/build/languageProcessing/helpers/sanitize/removeSentenceTerminators.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/removeURLs.js +1 -7
- package/build/languageProcessing/helpers/sanitize/removeURLs.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/sanitizeLineBreakTag.js +1 -7
- package/build/languageProcessing/helpers/sanitize/sanitizeLineBreakTag.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/sanitizeString.js +5 -10
- package/build/languageProcessing/helpers/sanitize/sanitizeString.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/stripHTMLTags.js +7 -16
- package/build/languageProcessing/helpers/sanitize/stripHTMLTags.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/stripNonTextTags.js +4 -10
- package/build/languageProcessing/helpers/sanitize/stripNonTextTags.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/stripNumbers.js +4 -10
- package/build/languageProcessing/helpers/sanitize/stripNumbers.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/stripSpaces.js +1 -7
- package/build/languageProcessing/helpers/sanitize/stripSpaces.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/stripWordBoundaries.js +2 -10
- package/build/languageProcessing/helpers/sanitize/stripWordBoundaries.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/unifyWhitespace.js +2 -11
- package/build/languageProcessing/helpers/sanitize/unifyWhitespace.js.map +1 -1
- package/build/languageProcessing/helpers/sentence/SentenceTokenizer.js +22 -29
- package/build/languageProcessing/helpers/sentence/SentenceTokenizer.js.map +1 -1
- package/build/languageProcessing/helpers/sentence/countSentences.js +4 -10
- package/build/languageProcessing/helpers/sentence/countSentences.js.map +1 -1
- package/build/languageProcessing/helpers/sentence/getSentences.js +13 -20
- package/build/languageProcessing/helpers/sentence/getSentences.js.map +1 -1
- package/build/languageProcessing/helpers/sentence/getSentencesFromTree.js +2 -9
- package/build/languageProcessing/helpers/sentence/getSentencesFromTree.js.map +1 -1
- package/build/languageProcessing/helpers/sentence/memoizedSentenceTokenizer.js +4 -10
- package/build/languageProcessing/helpers/sentence/memoizedSentenceTokenizer.js.map +1 -1
- package/build/languageProcessing/helpers/sentence/sentencesLength.js +7 -13
- package/build/languageProcessing/helpers/sentence/sentencesLength.js.map +1 -1
- package/build/languageProcessing/helpers/syllables/DeviationFragment.js +5 -11
- package/build/languageProcessing/helpers/syllables/DeviationFragment.js.map +1 -1
- package/build/languageProcessing/helpers/syllables/countSyllables.js +23 -30
- package/build/languageProcessing/helpers/syllables/countSyllables.js.map +1 -1
- package/build/languageProcessing/helpers/syllables/syllableCountIterator.js +7 -14
- package/build/languageProcessing/helpers/syllables/syllableCountIterator.js.map +1 -1
- package/build/languageProcessing/helpers/syllables/syllableCountStep.js +5 -12
- package/build/languageProcessing/helpers/syllables/syllableCountStep.js.map +1 -1
- package/build/languageProcessing/helpers/transform/transformWordsWithHyphens.js +1 -7
- package/build/languageProcessing/helpers/transform/transformWordsWithHyphens.js.map +1 -1
- package/build/languageProcessing/helpers/transliterate/replaceDiacritics.js +4 -10
- package/build/languageProcessing/helpers/transliterate/replaceDiacritics.js.map +1 -1
- package/build/languageProcessing/helpers/transliterate/specialCharacterMappings.js +12 -23
- package/build/languageProcessing/helpers/transliterate/specialCharacterMappings.js.map +1 -1
- package/build/languageProcessing/helpers/transliterate/transliterate.js +3 -9
- package/build/languageProcessing/helpers/transliterate/transliterate.js.map +1 -1
- package/build/languageProcessing/helpers/transliterate/transliterateWPstyle.js +3 -9
- package/build/languageProcessing/helpers/transliterate/transliterateWPstyle.js.map +1 -1
- package/build/languageProcessing/helpers/url/parseSlug.js +1 -7
- package/build/languageProcessing/helpers/url/parseSlug.js.map +1 -1
- package/build/languageProcessing/helpers/url/url.js +7 -13
- package/build/languageProcessing/helpers/url/url.js.map +1 -1
- package/build/languageProcessing/helpers/word/addWordboundary.js +1 -7
- package/build/languageProcessing/helpers/word/addWordboundary.js.map +1 -1
- package/build/languageProcessing/helpers/word/areWordsInSentence.js +4 -10
- package/build/languageProcessing/helpers/word/areWordsInSentence.js.map +1 -1
- package/build/languageProcessing/helpers/word/countMetaDescriptionLength.js +1 -7
- package/build/languageProcessing/helpers/word/countMetaDescriptionLength.js.map +1 -1
- package/build/languageProcessing/helpers/word/countWords.js +4 -10
- package/build/languageProcessing/helpers/word/countWords.js.map +1 -1
- package/build/languageProcessing/helpers/word/createPunctuationTokens.js +5 -10
- package/build/languageProcessing/helpers/word/createPunctuationTokens.js.map +1 -1
- package/build/languageProcessing/helpers/word/filterWordsFromArray.js +4 -9
- package/build/languageProcessing/helpers/word/filterWordsFromArray.js.map +1 -1
- package/build/languageProcessing/helpers/word/followsIndex.js +5 -10
- package/build/languageProcessing/helpers/word/followsIndex.js.map +1 -1
- package/build/languageProcessing/helpers/word/getAllWordsFromTree.js +7 -13
- package/build/languageProcessing/helpers/word/getAllWordsFromTree.js.map +1 -1
- package/build/languageProcessing/helpers/word/getWords.js +9 -19
- package/build/languageProcessing/helpers/word/getWords.js.map +1 -1
- package/build/languageProcessing/helpers/word/includesIndex.js +5 -10
- package/build/languageProcessing/helpers/word/includesIndex.js.map +1 -1
- package/build/languageProcessing/helpers/word/indices.js +14 -25
- package/build/languageProcessing/helpers/word/indices.js.map +1 -1
- package/build/languageProcessing/helpers/word/markWordsInSentences.js +23 -35
- package/build/languageProcessing/helpers/word/markWordsInSentences.js.map +1 -1
- package/build/languageProcessing/helpers/word/matchWordInSentence.js +8 -15
- package/build/languageProcessing/helpers/word/matchWordInSentence.js.map +1 -1
- package/build/languageProcessing/helpers/word/splitIntoTokens.js +3 -9
- package/build/languageProcessing/helpers/word/splitIntoTokens.js.map +1 -1
- package/build/languageProcessing/index.js +41 -282
- package/build/languageProcessing/index.js.map +1 -1
- package/build/languageProcessing/languages/_default/Researcher.js +5 -13
- package/build/languageProcessing/languages/_default/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/_default/helpers/getStemmer.js +3 -9
- package/build/languageProcessing/languages/_default/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/ar/Researcher.js +19 -27
- package/build/languageProcessing/languages/ar/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/ar/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/ar/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/ar/config/functionWords.js +7 -13
- package/build/languageProcessing/languages/ar/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/ar/config/internal/passiveVerbsWithLongVowel.js +1 -7
- package/build/languageProcessing/languages/ar/config/internal/passiveVerbsWithLongVowel.js.map +1 -1
- package/build/languageProcessing/languages/ar/config/prefixedFunctionWords.js +2 -8
- package/build/languageProcessing/languages/ar/config/prefixedFunctionWords.js.map +1 -1
- package/build/languageProcessing/languages/ar/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/ar/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/ar/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/ar/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/ar/helpers/createBasicWordForms.js +6 -11
- package/build/languageProcessing/languages/ar/helpers/createBasicWordForms.js.map +1 -1
- package/build/languageProcessing/languages/ar/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/ar/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/ar/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/ar/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/ar/helpers/isPassiveSentence.js +5 -12
- package/build/languageProcessing/languages/ar/helpers/isPassiveSentence.js.map +1 -1
- package/build/languageProcessing/languages/ca/Researcher.js +11 -19
- package/build/languageProcessing/languages/ca/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/ca/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/ca/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/ca/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/ca/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/ca/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/ca/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/ca/helpers/getStemmer.js +3 -9
- package/build/languageProcessing/languages/ca/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/cs/Researcher.js +17 -25
- package/build/languageProcessing/languages/cs/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/cs/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/cs/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/cs/config/functionWords.js +4 -10
- package/build/languageProcessing/languages/cs/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/cs/config/internal/passiveVoiceAuxiliaries.js +2 -8
- package/build/languageProcessing/languages/cs/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/cs/config/internal/passiveVoiceEndings.js +2 -8
- package/build/languageProcessing/languages/cs/config/internal/passiveVoiceEndings.js.map +1 -1
- package/build/languageProcessing/languages/cs/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/cs/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/cs/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/cs/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/cs/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/cs/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/cs/helpers/getClauses.js +9 -16
- package/build/languageProcessing/languages/cs/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/cs/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/cs/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/cs/helpers/internal/getParticiples.js +6 -12
- package/build/languageProcessing/languages/cs/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/cs/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/cs/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/cs/values/Clause.js +5 -12
- package/build/languageProcessing/languages/cs/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/de/Researcher.js +27 -35
- package/build/languageProcessing/languages/de/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/de/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/de/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/de/config/functionWords.js +11 -19
- package/build/languageProcessing/languages/de/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/de/config/internal/exceptionsParticiplesActive.js +1 -7
- package/build/languageProcessing/languages/de/config/internal/exceptionsParticiplesActive.js.map +1 -1
- package/build/languageProcessing/languages/de/config/internal/passiveVoiceAuxiliaries.js +4 -10
- package/build/languageProcessing/languages/de/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/de/config/internal/passiveVoiceIrregulars.js +1 -7
- package/build/languageProcessing/languages/de/config/internal/passiveVoiceIrregulars.js.map +1 -1
- package/build/languageProcessing/languages/de/config/internal/passiveVoiceRegex.js +1 -7
- package/build/languageProcessing/languages/de/config/internal/passiveVoiceRegex.js.map +1 -1
- package/build/languageProcessing/languages/de/config/keyphraseLength.js +1 -7
- package/build/languageProcessing/languages/de/config/keyphraseLength.js.map +1 -1
- package/build/languageProcessing/languages/de/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/de/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/de/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/de/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/de/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/de/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/de/config/wordComplexity.js +1 -7
- package/build/languageProcessing/languages/de/config/wordComplexity.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/calculateFleschReadingScore.js +3 -9
- package/build/languageProcessing/languages/de/helpers/calculateFleschReadingScore.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/checkIfWordIsComplex.js +1 -7
- package/build/languageProcessing/languages/de/helpers/checkIfWordIsComplex.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/checkIfWordIsFunction.js +3 -8
- package/build/languageProcessing/languages/de/helpers/checkIfWordIsFunction.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/getClauses.js +9 -16
- package/build/languageProcessing/languages/de/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/de/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/internal/SentenceTokenizer.js +4 -11
- package/build/languageProcessing/languages/de/helpers/internal/SentenceTokenizer.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/internal/detectAndStemRegularParticiple.js +4 -10
- package/build/languageProcessing/languages/de/helpers/internal/detectAndStemRegularParticiple.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/internal/determineStem.js +10 -16
- package/build/languageProcessing/languages/de/helpers/internal/determineStem.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/internal/getParticiples.js +9 -16
- package/build/languageProcessing/languages/de/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/de/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/memoizedSentenceTokenizer.js +4 -10
- package/build/languageProcessing/languages/de/helpers/memoizedSentenceTokenizer.js.map +1 -1
- package/build/languageProcessing/languages/de/values/Clause.js +11 -18
- package/build/languageProcessing/languages/de/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/el/Researcher.js +18 -26
- package/build/languageProcessing/languages/el/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/el/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/el/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/el/config/functionWords.js +4 -10
- package/build/languageProcessing/languages/el/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/el/config/internal/auxiliaries.js +1 -7
- package/build/languageProcessing/languages/el/config/internal/auxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/el/config/internal/morphologicalPassiveSuffixes.js +1 -7
- package/build/languageProcessing/languages/el/config/internal/morphologicalPassiveSuffixes.js.map +1 -1
- package/build/languageProcessing/languages/el/config/internal/nonPassiveVerbStems.js +1 -7
- package/build/languageProcessing/languages/el/config/internal/nonPassiveVerbStems.js.map +1 -1
- package/build/languageProcessing/languages/el/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/el/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/el/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/el/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/el/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/el/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/el/helpers/getClauses.js +9 -16
- package/build/languageProcessing/languages/el/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/el/helpers/getStemmer.js +7 -14
- package/build/languageProcessing/languages/el/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/el/helpers/internal/getParticiples.js +3 -9
- package/build/languageProcessing/languages/el/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/el/helpers/internal/stem.js +4 -13
- package/build/languageProcessing/languages/el/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/el/helpers/isPassiveSentence.js +7 -14
- package/build/languageProcessing/languages/el/helpers/isPassiveSentence.js.map +1 -1
- package/build/languageProcessing/languages/el/values/Clause.js +6 -12
- package/build/languageProcessing/languages/el/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/en/Researcher.js +21 -29
- package/build/languageProcessing/languages/en/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/en/config/abbreviations.js +2 -8
- package/build/languageProcessing/languages/en/config/abbreviations.js.map +1 -1
- package/build/languageProcessing/languages/en/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/en/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/en/config/functionWords.js +11 -18
- package/build/languageProcessing/languages/en/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/en/config/internal/passiveVoiceAuxiliaries.js +6 -12
- package/build/languageProcessing/languages/en/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/en/config/internal/passiveVoiceIrregulars.js +1 -7
- package/build/languageProcessing/languages/en/config/internal/passiveVoiceIrregulars.js.map +1 -1
- package/build/languageProcessing/languages/en/config/internal/passiveVoiceNonVerbEndingEd.js +1 -7
- package/build/languageProcessing/languages/en/config/internal/passiveVoiceNonVerbEndingEd.js.map +1 -1
- package/build/languageProcessing/languages/en/config/regularParticiplesRegex.js +1 -7
- package/build/languageProcessing/languages/en/config/regularParticiplesRegex.js.map +1 -1
- package/build/languageProcessing/languages/en/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/en/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/en/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/en/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/en/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/en/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/en/config/wordComplexity.js +1 -7
- package/build/languageProcessing/languages/en/config/wordComplexity.js.map +1 -1
- package/build/languageProcessing/languages/en/helpers/calculateFleschReadingScore.js +3 -9
- package/build/languageProcessing/languages/en/helpers/calculateFleschReadingScore.js.map +1 -1
- package/build/languageProcessing/languages/en/helpers/checkIfWordIsComplex.js +4 -10
- package/build/languageProcessing/languages/en/helpers/checkIfWordIsComplex.js.map +1 -1
- package/build/languageProcessing/languages/en/helpers/getClauses.js +15 -22
- package/build/languageProcessing/languages/en/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/en/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/en/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/en/helpers/internal/determineStem.js +21 -32
- package/build/languageProcessing/languages/en/helpers/internal/determineStem.js.map +1 -1
- package/build/languageProcessing/languages/en/helpers/internal/getAdjectiveStem.js +6 -13
- package/build/languageProcessing/languages/en/helpers/internal/getAdjectiveStem.js.map +1 -1
- package/build/languageProcessing/languages/en/helpers/internal/getParticiples.js +8 -14
- package/build/languageProcessing/languages/en/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/en/helpers/internal/getVerbStem.js +6 -16
- package/build/languageProcessing/languages/en/helpers/internal/getVerbStem.js.map +1 -1
- package/build/languageProcessing/languages/en/values/Clause.js +10 -17
- package/build/languageProcessing/languages/en/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/es/Researcher.js +23 -31
- package/build/languageProcessing/languages/es/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/es/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/es/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/es/config/functionWords.js +11 -17
- package/build/languageProcessing/languages/es/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/es/config/internal/passiveVoiceAuxiliaries.js +1 -7
- package/build/languageProcessing/languages/es/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/es/config/internal/passiveVoiceParticiples.js +1 -7
- package/build/languageProcessing/languages/es/config/internal/passiveVoiceParticiples.js.map +1 -1
- package/build/languageProcessing/languages/es/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/es/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/es/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/es/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/es/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/es/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/es/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/es/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/es/config/wordComplexity.js +1 -7
- package/build/languageProcessing/languages/es/config/wordComplexity.js.map +1 -1
- package/build/languageProcessing/languages/es/helpers/calculateFleschReadingScore.js +3 -9
- package/build/languageProcessing/languages/es/helpers/calculateFleschReadingScore.js.map +1 -1
- package/build/languageProcessing/languages/es/helpers/checkIfWordIsComplex.js +1 -7
- package/build/languageProcessing/languages/es/helpers/checkIfWordIsComplex.js.map +1 -1
- package/build/languageProcessing/languages/es/helpers/getClauses.js +10 -17
- package/build/languageProcessing/languages/es/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/es/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/es/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/es/helpers/internal/checkVerbStemModifications.js +7 -13
- package/build/languageProcessing/languages/es/helpers/internal/checkVerbStemModifications.js.map +1 -1
- package/build/languageProcessing/languages/es/helpers/internal/getParticiples.js +6 -12
- package/build/languageProcessing/languages/es/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/es/helpers/internal/stem.js +5 -13
- package/build/languageProcessing/languages/es/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/es/values/Clause.js +7 -14
- package/build/languageProcessing/languages/es/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/fa/Researcher.js +19 -27
- package/build/languageProcessing/languages/fa/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/fa/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/fa/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/fa/config/functionWords.js +4 -10
- package/build/languageProcessing/languages/fa/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/fa/config/internal/participles.js +1 -7
- package/build/languageProcessing/languages/fa/config/internal/participles.js.map +1 -1
- package/build/languageProcessing/languages/fa/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/fa/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/fa/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/fa/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/fa/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/fa/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/fa/helpers/createBasicWordForms.js +3 -9
- package/build/languageProcessing/languages/fa/helpers/createBasicWordForms.js.map +1 -1
- package/build/languageProcessing/languages/fa/helpers/getStemmer.js +3 -9
- package/build/languageProcessing/languages/fa/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/fa/helpers/isPassiveSentence.js +6 -12
- package/build/languageProcessing/languages/fa/helpers/isPassiveSentence.js.map +1 -1
- package/build/languageProcessing/languages/fr/Researcher.js +21 -29
- package/build/languageProcessing/languages/fr/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/fr/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/fr/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/fr/config/functionWords.js +11 -17
- package/build/languageProcessing/languages/fr/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/fr/config/internal/exceptionsParticiplesActive.js +4 -9
- package/build/languageProcessing/languages/fr/config/internal/exceptionsParticiplesActive.js.map +1 -1
- package/build/languageProcessing/languages/fr/config/internal/passiveVoiceAuxiliaries.js +1 -7
- package/build/languageProcessing/languages/fr/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/fr/config/internal/passiveVoiceIrregulars.js +4 -9
- package/build/languageProcessing/languages/fr/config/internal/passiveVoiceIrregulars.js.map +1 -1
- package/build/languageProcessing/languages/fr/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/fr/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/fr/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/fr/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/fr/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/fr/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/fr/config/wordComplexity.js +1 -7
- package/build/languageProcessing/languages/fr/config/wordComplexity.js.map +1 -1
- package/build/languageProcessing/languages/fr/helpers/calculateFleschReadingScore.js +3 -9
- package/build/languageProcessing/languages/fr/helpers/calculateFleschReadingScore.js.map +1 -1
- package/build/languageProcessing/languages/fr/helpers/checkIfWordIsComplex.js +3 -9
- package/build/languageProcessing/languages/fr/helpers/checkIfWordIsComplex.js.map +1 -1
- package/build/languageProcessing/languages/fr/helpers/getClauses.js +10 -17
- package/build/languageProcessing/languages/fr/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/fr/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/fr/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/fr/helpers/internal/getParticiples.js +11 -16
- package/build/languageProcessing/languages/fr/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/fr/helpers/internal/stem.js +3 -10
- package/build/languageProcessing/languages/fr/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/fr/values/Clause.js +14 -20
- package/build/languageProcessing/languages/fr/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/he/Researcher.js +21 -29
- package/build/languageProcessing/languages/he/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/he/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/he/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/he/config/functionWords.js +4 -11
- package/build/languageProcessing/languages/he/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/he/config/internal/regularRootsHufal.js +1 -7
- package/build/languageProcessing/languages/he/config/internal/regularRootsHufal.js.map +1 -1
- package/build/languageProcessing/languages/he/config/internal/regularRootsNifal.js +1 -7
- package/build/languageProcessing/languages/he/config/internal/regularRootsNifal.js.map +1 -1
- package/build/languageProcessing/languages/he/config/internal/regularRootsPual.js +1 -7
- package/build/languageProcessing/languages/he/config/internal/regularRootsPual.js.map +1 -1
- package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsHufal.js +1 -7
- package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsHufal.js.map +1 -1
- package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsNifal.js +1 -7
- package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsNifal.js.map +1 -1
- package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsPual.js +1 -7
- package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsPual.js.map +1 -1
- package/build/languageProcessing/languages/he/config/prefixedFunctionWords.js +2 -8
- package/build/languageProcessing/languages/he/config/prefixedFunctionWords.js.map +1 -1
- package/build/languageProcessing/languages/he/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/he/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/he/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/he/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/he/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/he/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/he/helpers/createBasicWordForms.js +6 -11
- package/build/languageProcessing/languages/he/helpers/createBasicWordForms.js.map +1 -1
- package/build/languageProcessing/languages/he/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/he/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/he/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/he/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/he/helpers/isPassiveSentence.js +10 -16
- package/build/languageProcessing/languages/he/helpers/isPassiveSentence.js.map +1 -1
- package/build/languageProcessing/languages/he/helpers/stem.js +1 -7
- package/build/languageProcessing/languages/he/helpers/stem.js.map +1 -1
- package/build/languageProcessing/languages/hu/Researcher.js +19 -27
- package/build/languageProcessing/languages/hu/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/hu/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/functionWords.js +4 -10
- package/build/languageProcessing/languages/hu/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/internal/auxiliaries.js +1 -7
- package/build/languageProcessing/languages/hu/config/internal/auxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/internal/morphologicalPassiveAffixes.js +3 -9
- package/build/languageProcessing/languages/hu/config/internal/morphologicalPassiveAffixes.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/internal/nonPassivesInVaAndVe.js +2 -7
- package/build/languageProcessing/languages/hu/config/internal/nonPassivesInVaAndVe.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/internal/odikVerbs.js +1 -7
- package/build/languageProcessing/languages/hu/config/internal/odikVerbs.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/internal/participles.js +2 -7
- package/build/languageProcessing/languages/hu/config/internal/participles.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/stopWords.js +2 -7
- package/build/languageProcessing/languages/hu/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/hu/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/hu/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/hu/helpers/getClauses.js +9 -16
- package/build/languageProcessing/languages/hu/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/hu/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/hu/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/hu/helpers/internal/getParticiples.js +6 -12
- package/build/languageProcessing/languages/hu/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/hu/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/hu/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/hu/helpers/isPassiveSentence.js +9 -15
- package/build/languageProcessing/languages/hu/helpers/isPassiveSentence.js.map +1 -1
- package/build/languageProcessing/languages/hu/values/Clause.js +8 -14
- package/build/languageProcessing/languages/hu/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/id/Researcher.js +17 -25
- package/build/languageProcessing/languages/id/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/id/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/id/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/id/config/functionWords.js +8 -16
- package/build/languageProcessing/languages/id/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/id/config/internal/nonPassiveVerbsStartingDi.js +1 -7
- package/build/languageProcessing/languages/id/config/internal/nonPassiveVerbsStartingDi.js.map +1 -1
- package/build/languageProcessing/languages/id/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/id/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/id/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/id/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/id/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/id/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/id/helpers/internal/stem.js +29 -34
- package/build/languageProcessing/languages/id/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/id/helpers/internal/stemHelpers.js +5 -13
- package/build/languageProcessing/languages/id/helpers/internal/stemHelpers.js.map +1 -1
- package/build/languageProcessing/languages/id/helpers/isPassiveSentence.js +5 -12
- package/build/languageProcessing/languages/id/helpers/isPassiveSentence.js.map +1 -1
- package/build/languageProcessing/languages/id/helpers/splitIntoTokensCustom.js +3 -9
- package/build/languageProcessing/languages/id/helpers/splitIntoTokensCustom.js.map +1 -1
- package/build/languageProcessing/languages/it/Researcher.js +23 -31
- package/build/languageProcessing/languages/it/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/it/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/it/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/it/config/functionWords.js +11 -17
- package/build/languageProcessing/languages/it/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/it/config/internal/passiveVoiceAuxiliaries.js +1 -7
- package/build/languageProcessing/languages/it/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/it/config/internal/passiveVoiceParticiples.js +1 -7
- package/build/languageProcessing/languages/it/config/internal/passiveVoiceParticiples.js.map +1 -1
- package/build/languageProcessing/languages/it/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/it/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/it/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/it/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/it/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/it/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/it/config/twoPartTransitionWords.js +1 -7
- package/build/languageProcessing/languages/it/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/it/helpers/calculateFleschReadingScore.js +3 -9
- package/build/languageProcessing/languages/it/helpers/calculateFleschReadingScore.js.map +1 -1
- package/build/languageProcessing/languages/it/helpers/getClauses.js +10 -17
- package/build/languageProcessing/languages/it/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/it/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/it/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/it/helpers/internal/getParticiples.js +6 -12
- package/build/languageProcessing/languages/it/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/it/helpers/internal/stem.js +3 -9
- package/build/languageProcessing/languages/it/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/it/values/Clause.js +7 -14
- package/build/languageProcessing/languages/it/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/ja/Researcher.js +51 -59
- package/build/languageProcessing/languages/ja/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/assessmentApplicabilityCharacterCount.js +1 -7
- package/build/languageProcessing/languages/ja/config/assessmentApplicabilityCharacterCount.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/ja/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/functionWords.js +1 -7
- package/build/languageProcessing/languages/ja/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/keyphraseLength.js +1 -7
- package/build/languageProcessing/languages/ja/config/keyphraseLength.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/metaDescriptionLength.js +1 -7
- package/build/languageProcessing/languages/ja/config/metaDescriptionLength.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/paragraphLength.js +1 -7
- package/build/languageProcessing/languages/ja/config/paragraphLength.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/ja/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/subheadingsTooLong.js +1 -7
- package/build/languageProcessing/languages/ja/config/subheadingsTooLong.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/textLength.js +1 -7
- package/build/languageProcessing/languages/ja/config/textLength.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/topicLength.js +1 -7
- package/build/languageProcessing/languages/ja/config/topicLength.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/transitionWords.js +2 -7
- package/build/languageProcessing/languages/ja/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/ja/customResearches/findKeyphraseInSEOTitle.js +16 -22
- package/build/languageProcessing/languages/ja/customResearches/findKeyphraseInSEOTitle.js.map +1 -1
- package/build/languageProcessing/languages/ja/customResearches/getKeyphraseLength.js +5 -11
- package/build/languageProcessing/languages/ja/customResearches/getKeyphraseLength.js.map +1 -1
- package/build/languageProcessing/languages/ja/customResearches/getWordForms.js +11 -17
- package/build/languageProcessing/languages/ja/customResearches/getWordForms.js.map +1 -1
- package/build/languageProcessing/languages/ja/customResearches/textLength.js +3 -9
- package/build/languageProcessing/languages/ja/customResearches/textLength.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/countCharacters.js +6 -12
- package/build/languageProcessing/languages/ja/helpers/countCharacters.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/customGetStemmer.js +8 -14
- package/build/languageProcessing/languages/ja/helpers/customGetStemmer.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/getContentWords.js +5 -11
- package/build/languageProcessing/languages/ja/helpers/getContentWords.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/getWords.js +8 -15
- package/build/languageProcessing/languages/ja/helpers/getWords.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/internal/SentenceTokenizer.js +6 -13
- package/build/languageProcessing/languages/ja/helpers/internal/SentenceTokenizer.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/internal/createWordForms.js +4 -9
- package/build/languageProcessing/languages/ja/helpers/internal/createWordForms.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/internal/determineStem.js +3 -9
- package/build/languageProcessing/languages/ja/helpers/internal/determineStem.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/matchTextWithWord.js +7 -13
- package/build/languageProcessing/languages/ja/helpers/matchTextWithWord.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/matchTransitionWords.js +3 -9
- package/build/languageProcessing/languages/ja/helpers/matchTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/memoizedSentenceTokenizer.js +4 -10
- package/build/languageProcessing/languages/ja/helpers/memoizedSentenceTokenizer.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/splitIntoTokensCustom.js +5 -11
- package/build/languageProcessing/languages/ja/helpers/splitIntoTokensCustom.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/wordsCharacterCount.js +1 -7
- package/build/languageProcessing/languages/ja/helpers/wordsCharacterCount.js.map +1 -1
- package/build/languageProcessing/languages/nb/Researcher.js +17 -25
- package/build/languageProcessing/languages/nb/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/nb/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/nb/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/nb/config/functionWords.js +5 -11
- package/build/languageProcessing/languages/nb/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/nb/config/internal/participles.js +2 -7
- package/build/languageProcessing/languages/nb/config/internal/participles.js.map +1 -1
- package/build/languageProcessing/languages/nb/config/internal/passiveVoiceAuxiliaries.js +1 -7
- package/build/languageProcessing/languages/nb/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/nb/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/nb/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/nb/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/nb/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/nb/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/nb/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/nb/helpers/getClauses.js +11 -18
- package/build/languageProcessing/languages/nb/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/nb/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/nb/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/nb/helpers/internal/getParticiples.js +8 -14
- package/build/languageProcessing/languages/nb/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/nb/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/nb/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/nb/values/Clause.js +8 -14
- package/build/languageProcessing/languages/nb/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/nl/Researcher.js +23 -31
- package/build/languageProcessing/languages/nl/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/nl/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/nl/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/nl/config/functionWords.js +10 -16
- package/build/languageProcessing/languages/nl/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/nl/config/internal/nonParticiples.js +1 -7
- package/build/languageProcessing/languages/nl/config/internal/nonParticiples.js.map +1 -1
- package/build/languageProcessing/languages/nl/config/internal/passiveVoiceAuxiliaries.js +1 -7
- package/build/languageProcessing/languages/nl/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/nl/config/internal/passiveVoiceIrregulars.js +1 -7
- package/build/languageProcessing/languages/nl/config/internal/passiveVoiceIrregulars.js.map +1 -1
- package/build/languageProcessing/languages/nl/config/keyphraseLength.js +1 -7
- package/build/languageProcessing/languages/nl/config/keyphraseLength.js.map +1 -1
- package/build/languageProcessing/languages/nl/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/nl/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/nl/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/nl/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/nl/config/twoPartTransitionWords.js +1 -7
- package/build/languageProcessing/languages/nl/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/calculateFleschReadingScore.js +3 -9
- package/build/languageProcessing/languages/nl/helpers/calculateFleschReadingScore.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/getClauses.js +9 -16
- package/build/languageProcessing/languages/nl/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/nl/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/internal/checkExceptionsWithFullForms.js +7 -13
- package/build/languageProcessing/languages/nl/helpers/internal/checkExceptionsWithFullForms.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemRegularParticiple.js +8 -14
- package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemRegularParticiple.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemSuffixes.js +10 -15
- package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemSuffixes.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/internal/determineStem.js +10 -16
- package/build/languageProcessing/languages/nl/helpers/internal/determineStem.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/internal/getParticiples.js +7 -13
- package/build/languageProcessing/languages/nl/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/internal/getStemWordsWithTAndDEnding.js +7 -12
- package/build/languageProcessing/languages/nl/helpers/internal/getStemWordsWithTAndDEnding.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/internal/stem.js +17 -23
- package/build/languageProcessing/languages/nl/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/internal/stemModificationHelpers.js +4 -11
- package/build/languageProcessing/languages/nl/helpers/internal/stemModificationHelpers.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/internal/stemTOrDFromEndOfWord.js +8 -14
- package/build/languageProcessing/languages/nl/helpers/internal/stemTOrDFromEndOfWord.js.map +1 -1
- package/build/languageProcessing/languages/nl/values/Clause.js +10 -16
- package/build/languageProcessing/languages/nl/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/pl/Researcher.js +19 -27
- package/build/languageProcessing/languages/pl/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/pl/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/pl/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/pl/config/functionWords.js +9 -16
- package/build/languageProcessing/languages/pl/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/pl/config/internal/auxiliaries.js +1 -7
- package/build/languageProcessing/languages/pl/config/internal/auxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/pl/config/internal/participles.js +1 -7
- package/build/languageProcessing/languages/pl/config/internal/participles.js.map +1 -1
- package/build/languageProcessing/languages/pl/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/pl/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/pl/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/pl/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/pl/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/pl/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/pl/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/pl/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/pl/helpers/getClauses.js +9 -16
- package/build/languageProcessing/languages/pl/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/pl/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/pl/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/pl/helpers/internal/getParticiples.js +7 -13
- package/build/languageProcessing/languages/pl/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/pl/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/pl/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/pl/values/Clause.js +8 -14
- package/build/languageProcessing/languages/pl/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/pt/Researcher.js +23 -31
- package/build/languageProcessing/languages/pt/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/pt/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/pt/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/pt/config/functionWords.js +10 -16
- package/build/languageProcessing/languages/pt/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/pt/config/internal/passiveVoiceAuxiliaries.js +1 -7
- package/build/languageProcessing/languages/pt/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/pt/config/internal/passiveVoiceParticiples.js +1 -7
- package/build/languageProcessing/languages/pt/config/internal/passiveVoiceParticiples.js.map +1 -1
- package/build/languageProcessing/languages/pt/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/pt/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/pt/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/pt/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/pt/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/pt/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/pt/config/twoPartTransitionWords.js +1 -7
- package/build/languageProcessing/languages/pt/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/pt/helpers/calculateFleschReadingScore.js +3 -9
- package/build/languageProcessing/languages/pt/helpers/calculateFleschReadingScore.js.map +1 -1
- package/build/languageProcessing/languages/pt/helpers/getClauses.js +10 -17
- package/build/languageProcessing/languages/pt/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/pt/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/pt/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/pt/helpers/internal/getParticiples.js +6 -12
- package/build/languageProcessing/languages/pt/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/pt/helpers/internal/stem.js +3 -9
- package/build/languageProcessing/languages/pt/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/pt/values/Clause.js +7 -14
- package/build/languageProcessing/languages/pt/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/ru/Researcher.js +23 -31
- package/build/languageProcessing/languages/ru/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/ru/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/ru/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/ru/config/fleschReadingEaseScores.js +1 -7
- package/build/languageProcessing/languages/ru/config/fleschReadingEaseScores.js.map +1 -1
- package/build/languageProcessing/languages/ru/config/functionWords.js +8 -14
- package/build/languageProcessing/languages/ru/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/ru/config/internal/participlesShortenedList.js +2 -8
- package/build/languageProcessing/languages/ru/config/internal/participlesShortenedList.js.map +1 -1
- package/build/languageProcessing/languages/ru/config/internal/passiveVoiceParticiples.js +1 -7
- package/build/languageProcessing/languages/ru/config/internal/passiveVoiceParticiples.js.map +1 -1
- package/build/languageProcessing/languages/ru/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/ru/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/ru/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/ru/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/ru/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/ru/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/ru/helpers/calculateFleschReadingScore.js +3 -9
- package/build/languageProcessing/languages/ru/helpers/calculateFleschReadingScore.js.map +1 -1
- package/build/languageProcessing/languages/ru/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/ru/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/ru/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/ru/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/ru/helpers/isPassiveSentence.js +6 -12
- package/build/languageProcessing/languages/ru/helpers/isPassiveSentence.js.map +1 -1
- package/build/languageProcessing/languages/sk/Researcher.js +17 -25
- package/build/languageProcessing/languages/sk/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/sk/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/sk/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/sk/config/functionWords.js +5 -11
- package/build/languageProcessing/languages/sk/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/sk/config/internal/nonPassives.js +1 -7
- package/build/languageProcessing/languages/sk/config/internal/nonPassives.js.map +1 -1
- package/build/languageProcessing/languages/sk/config/internal/passiveVoiceAuxiliaries.js +2 -8
- package/build/languageProcessing/languages/sk/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/sk/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/sk/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/sk/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/sk/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/sk/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/sk/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/sk/helpers/getClauses.js +9 -16
- package/build/languageProcessing/languages/sk/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/sk/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/sk/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/sk/helpers/internal/getParticiples.js +3 -9
- package/build/languageProcessing/languages/sk/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/sk/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/sk/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/sk/values/Clause.js +8 -14
- package/build/languageProcessing/languages/sk/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/sv/Researcher.js +17 -25
- package/build/languageProcessing/languages/sv/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/sv/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/sv/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/sv/config/functionWords.js +7 -13
- package/build/languageProcessing/languages/sv/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/sv/config/internal/passiveVerbs.js +2 -7
- package/build/languageProcessing/languages/sv/config/internal/passiveVerbs.js.map +1 -1
- package/build/languageProcessing/languages/sv/config/keyphraseLength.js +1 -7
- package/build/languageProcessing/languages/sv/config/keyphraseLength.js.map +1 -1
- package/build/languageProcessing/languages/sv/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/sv/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/sv/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/sv/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/sv/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/sv/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/sv/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/sv/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/sv/helpers/isPassiveSentence.js +6 -12
- package/build/languageProcessing/languages/sv/helpers/isPassiveSentence.js.map +1 -1
- package/build/languageProcessing/languages/tr/Researcher.js +17 -25
- package/build/languageProcessing/languages/tr/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/tr/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/tr/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/tr/config/functionWords.js +4 -10
- package/build/languageProcessing/languages/tr/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/tr/config/internal/nonPassiveExceptions.js +3 -8
- package/build/languageProcessing/languages/tr/config/internal/nonPassiveExceptions.js.map +1 -1
- package/build/languageProcessing/languages/tr/config/internal/passiveEndings.js +1 -7
- package/build/languageProcessing/languages/tr/config/internal/passiveEndings.js.map +1 -1
- package/build/languageProcessing/languages/tr/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/tr/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/tr/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/tr/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/tr/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/tr/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/tr/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/tr/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/tr/helpers/internal/stem.js +3 -9
- package/build/languageProcessing/languages/tr/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/tr/helpers/isPassiveSentence.js +9 -15
- package/build/languageProcessing/languages/tr/helpers/isPassiveSentence.js.map +1 -1
- package/build/languageProcessing/researches/altTagCount.js +10 -16
- package/build/languageProcessing/researches/altTagCount.js.map +1 -1
- package/build/languageProcessing/researches/checkRelatedKeywords.js +71 -0
- package/build/languageProcessing/researches/checkRelatedKeywords.js.map +1 -0
- package/build/languageProcessing/researches/countSentencesFromText.js +9 -15
- package/build/languageProcessing/researches/countSentencesFromText.js.map +1 -1
- package/build/languageProcessing/researches/findKeyphraseInSEOTitle.js +19 -26
- package/build/languageProcessing/researches/findKeyphraseInSEOTitle.js.map +1 -1
- package/build/languageProcessing/researches/findKeywordInFirstParagraph.js +12 -18
- package/build/languageProcessing/researches/findKeywordInFirstParagraph.js.map +1 -1
- package/build/languageProcessing/researches/findTransitionWords.js +16 -23
- package/build/languageProcessing/researches/findTransitionWords.js.map +1 -1
- package/build/languageProcessing/researches/functionWordsInKeyphrase.js +10 -16
- package/build/languageProcessing/researches/functionWordsInKeyphrase.js.map +1 -1
- package/build/languageProcessing/researches/getAnchorsWithKeyphrase.js +21 -28
- package/build/languageProcessing/researches/getAnchorsWithKeyphrase.js.map +1 -1
- package/build/languageProcessing/researches/getFleschReadingScore.js +18 -25
- package/build/languageProcessing/researches/getFleschReadingScore.js.map +1 -1
- package/build/languageProcessing/researches/getKeywordDensity.js +4 -11
- package/build/languageProcessing/researches/getKeywordDensity.js.map +1 -1
- package/build/languageProcessing/researches/getLinkStatistics.js +7 -13
- package/build/languageProcessing/researches/getLinkStatistics.js.map +1 -1
- package/build/languageProcessing/researches/getLinks.js +7 -13
- package/build/languageProcessing/researches/getLinks.js.map +1 -1
- package/build/languageProcessing/researches/getLongCenterAlignedTexts.js +1 -7
- package/build/languageProcessing/researches/getLongCenterAlignedTexts.js.map +1 -1
- package/build/languageProcessing/researches/getParagraphLength.js +15 -21
- package/build/languageProcessing/researches/getParagraphLength.js.map +1 -1
- package/build/languageProcessing/researches/getParagraphs.js +4 -9
- package/build/languageProcessing/researches/getParagraphs.js.map +1 -1
- package/build/languageProcessing/researches/getPassiveVoiceResult.js +21 -30
- package/build/languageProcessing/researches/getPassiveVoiceResult.js.map +1 -1
- package/build/languageProcessing/researches/getProminentWordsForInsights.js +12 -18
- package/build/languageProcessing/researches/getProminentWordsForInsights.js.map +1 -1
- package/build/languageProcessing/researches/getProminentWordsForInternalLinking.js +20 -26
- package/build/languageProcessing/researches/getProminentWordsForInternalLinking.js.map +1 -1
- package/build/languageProcessing/researches/getSentenceBeginnings.js +18 -24
- package/build/languageProcessing/researches/getSentenceBeginnings.js.map +1 -1
- package/build/languageProcessing/researches/getSubheadingTextLengths.js +12 -18
- package/build/languageProcessing/researches/getSubheadingTextLengths.js.map +1 -1
- package/build/languageProcessing/researches/getWordForms.js +13 -19
- package/build/languageProcessing/researches/getWordForms.js.map +1 -1
- package/build/languageProcessing/researches/h1s.js +1 -7
- package/build/languageProcessing/researches/h1s.js.map +1 -1
- package/build/languageProcessing/researches/imageCount.js +4 -10
- package/build/languageProcessing/researches/imageCount.js.map +1 -1
- package/build/languageProcessing/researches/index.js +4 -27
- package/build/languageProcessing/researches/index.js.map +1 -1
- package/build/languageProcessing/researches/keyphraseDistribution.js +22 -32
- package/build/languageProcessing/researches/keyphraseDistribution.js.map +1 -1
- package/build/languageProcessing/researches/keyphraseLength.js +1 -7
- package/build/languageProcessing/researches/keyphraseLength.js.map +1 -1
- package/build/languageProcessing/researches/keywordCount.js +21 -29
- package/build/languageProcessing/researches/keywordCount.js.map +1 -1
- package/build/languageProcessing/researches/keywordCountInUrl.js +8 -16
- package/build/languageProcessing/researches/keywordCountInUrl.js.map +1 -1
- package/build/languageProcessing/researches/matchKeywordInSubheadings.js +11 -17
- package/build/languageProcessing/researches/matchKeywordInSubheadings.js.map +1 -1
- package/build/languageProcessing/researches/metaDescriptionKeyword.js +6 -12
- package/build/languageProcessing/researches/metaDescriptionKeyword.js.map +1 -1
- package/build/languageProcessing/researches/metaDescriptionLength.js +3 -9
- package/build/languageProcessing/researches/metaDescriptionLength.js.map +1 -1
- package/build/languageProcessing/researches/pageTitleWidth.js +1 -7
- package/build/languageProcessing/researches/pageTitleWidth.js.map +1 -1
- package/build/languageProcessing/researches/readingTime.js +7 -13
- package/build/languageProcessing/researches/readingTime.js.map +1 -1
- package/build/languageProcessing/researches/sentences.js +7 -13
- package/build/languageProcessing/researches/sentences.js.map +1 -1
- package/build/languageProcessing/researches/videoCount.js +1 -7
- package/build/languageProcessing/researches/videoCount.js.map +1 -1
- package/build/languageProcessing/researches/wordComplexity.js +15 -21
- package/build/languageProcessing/researches/wordComplexity.js.map +1 -1
- package/build/languageProcessing/researches/wordCountInText.js +7 -13
- package/build/languageProcessing/researches/wordCountInText.js.map +1 -1
- package/build/languageProcessing/values/Clause.js +1 -7
- package/build/languageProcessing/values/Clause.js.map +1 -1
- package/build/languageProcessing/values/ProminentWord.js +1 -7
- package/build/languageProcessing/values/ProminentWord.js.map +1 -1
- package/build/languageProcessing/values/Sentence.js +1 -7
- package/build/languageProcessing/values/Sentence.js.map +1 -1
- package/build/languageProcessing/values/index.js +4 -27
- package/build/languageProcessing/values/index.js.map +1 -1
- package/build/markers/addMark.js +1 -7
- package/build/markers/addMark.js.map +1 -1
- package/build/markers/addMarkSingleWord.js +7 -12
- package/build/markers/addMarkSingleWord.js.map +1 -1
- package/build/markers/index.js +3 -20
- package/build/markers/index.js.map +1 -1
- package/build/markers/removeDuplicateMarks.js +3 -8
- package/build/markers/removeDuplicateMarks.js.map +1 -1
- package/build/markers/removeMarks.js +1 -7
- package/build/markers/removeMarks.js.map +1 -1
- package/build/parse/build/build.js +17 -25
- package/build/parse/build/build.js.map +1 -1
- package/build/parse/build/index.js +7 -12
- package/build/parse/build/index.js.map +1 -1
- package/build/parse/build/private/adapt.js +15 -21
- package/build/parse/build/private/adapt.js.map +1 -1
- package/build/parse/build/private/adaptAttributes.js +3 -9
- package/build/parse/build/private/adaptAttributes.js.map +1 -1
- package/build/parse/build/private/alwaysFilterElements.js +9 -14
- package/build/parse/build/private/alwaysFilterElements.js.map +1 -1
- package/build/parse/build/private/combineIntoImplicitParagraphs.js +12 -18
- package/build/parse/build/private/combineIntoImplicitParagraphs.js.map +1 -1
- package/build/parse/build/private/filterBeforeTokenizing.js +5 -10
- package/build/parse/build/private/filterBeforeTokenizing.js.map +1 -1
- package/build/parse/build/private/filterHelpers.js +3 -11
- package/build/parse/build/private/filterHelpers.js.map +1 -1
- package/build/parse/build/private/filterTree.js +3 -8
- package/build/parse/build/private/filterTree.js.map +1 -1
- package/build/parse/build/private/getTextElementPositions.js +5 -10
- package/build/parse/build/private/getTextElementPositions.js.map +1 -1
- package/build/parse/build/private/helpers/parseClassAttribute.js +1 -7
- package/build/parse/build/private/helpers/parseClassAttribute.js.map +1 -1
- package/build/parse/build/private/isPhrasingContent.js +1 -7
- package/build/parse/build/private/isPhrasingContent.js.map +1 -1
- package/build/parse/build/private/parseBlocks.js +4 -11
- package/build/parse/build/private/parseBlocks.js.map +1 -1
- package/build/parse/build/private/tokenize.js +8 -14
- package/build/parse/build/private/tokenize.js.map +1 -1
- package/build/parse/language/LanguageProcessor.js +8 -15
- package/build/parse/language/LanguageProcessor.js.map +1 -1
- package/build/parse/structure/Heading.js +3 -9
- package/build/parse/structure/Heading.js.map +1 -1
- package/build/parse/structure/Node.js +8 -14
- package/build/parse/structure/Node.js.map +1 -1
- package/build/parse/structure/Paragraph.js +3 -9
- package/build/parse/structure/Paragraph.js.map +1 -1
- package/build/parse/structure/Sentence.js +1 -7
- package/build/parse/structure/Sentence.js.map +1 -1
- package/build/parse/structure/SourceCodeLocation.js +1 -7
- package/build/parse/structure/SourceCodeLocation.js.map +1 -1
- package/build/parse/structure/Text.js +3 -10
- package/build/parse/structure/Text.js.map +1 -1
- package/build/parse/structure/Token.js +3 -8
- package/build/parse/structure/Token.js.map +1 -1
- package/build/parse/structure/index.js +10 -33
- package/build/parse/structure/index.js.map +1 -1
- package/build/parse/traverse/findAllInTree.js +1 -7
- package/build/parse/traverse/findAllInTree.js.map +1 -1
- package/build/parse/traverse/index.js +8 -19
- package/build/parse/traverse/index.js.map +1 -1
- package/build/parse/traverse/innerText.js +3 -8
- package/build/parse/traverse/innerText.js.map +1 -1
- package/build/parsedPaper/ParsedPaper.js +1 -8
- package/build/parsedPaper/ParsedPaper.js.map +1 -1
- package/build/parsedPaper/assess/TreeAssessor.js +6 -12
- package/build/parsedPaper/assess/TreeAssessor.js.map +1 -1
- package/build/parsedPaper/assess/assessmentListFactories.js +1 -11
- package/build/parsedPaper/assess/assessmentListFactories.js.map +1 -1
- package/build/parsedPaper/assess/assessments/Assessment.js +15 -9
- package/build/parsedPaper/assess/assessments/Assessment.js.map +1 -1
- package/build/parsedPaper/assess/assessments/index.js +6 -13
- package/build/parsedPaper/assess/assessments/index.js.map +1 -1
- package/build/parsedPaper/assess/assessorFactories.js +16 -24
- package/build/parsedPaper/assess/assessorFactories.js.map +1 -1
- package/build/parsedPaper/assess/cornerstone/assessmentListFactories.js +1 -9
- package/build/parsedPaper/assess/cornerstone/assessmentListFactories.js.map +1 -1
- package/build/parsedPaper/assess/cornerstone/index.js +2 -10
- package/build/parsedPaper/assess/cornerstone/index.js.map +1 -1
- package/build/parsedPaper/assess/index.js +13 -29
- package/build/parsedPaper/assess/index.js.map +1 -1
- package/build/parsedPaper/build/PaperParser.js +5 -11
- package/build/parsedPaper/build/PaperParser.js.map +1 -1
- package/build/parsedPaper/build/linguisticParsing/Sentence.js +1 -7
- package/build/parsedPaper/build/linguisticParsing/Sentence.js.map +1 -1
- package/build/parsedPaper/build/linguisticParsing/SentenceTokenizer.js +16 -23
- package/build/parsedPaper/build/linguisticParsing/SentenceTokenizer.js.map +1 -1
- package/build/parsedPaper/build/linguisticParsing/parseText.js +3 -9
- package/build/parsedPaper/build/linguisticParsing/parseText.js.map +1 -1
- package/build/parsedPaper/build/tree/TreeBuilder.js +3 -9
- package/build/parsedPaper/build/tree/TreeBuilder.js.map +1 -1
- package/build/parsedPaper/build/tree/cleanup/calculateTextIndices.js +5 -10
- package/build/parsedPaper/build/tree/cleanup/calculateTextIndices.js.map +1 -1
- package/build/parsedPaper/build/tree/cleanup/getElementContent.js +1 -7
- package/build/parsedPaper/build/tree/cleanup/getElementContent.js.map +1 -1
- package/build/parsedPaper/build/tree/cleanup/postParsing.js +5 -11
- package/build/parsedPaper/build/tree/cleanup/postParsing.js.map +1 -1
- package/build/parsedPaper/build/tree/html/HTMLTreeConverter.js +21 -27
- package/build/parsedPaper/build/tree/html/HTMLTreeConverter.js.map +1 -1
- package/build/parsedPaper/build/tree/html/buildTree.js +7 -13
- package/build/parsedPaper/build/tree/html/buildTree.js.map +1 -1
- package/build/parsedPaper/build/tree/html/htmlConstants.js +4 -9
- package/build/parsedPaper/build/tree/html/htmlConstants.js.map +1 -1
- package/build/parsedPaper/build/tree/index.js +3 -8
- package/build/parsedPaper/build/tree/index.js.map +1 -1
- package/build/parsedPaper/build/tree/metadata/buildTree.js +12 -18
- package/build/parsedPaper/build/tree/metadata/buildTree.js.map +1 -1
- package/build/parsedPaper/research/TreeResearcher.js +4 -9
- package/build/parsedPaper/research/TreeResearcher.js.map +1 -1
- package/build/parsedPaper/research/index.js +10 -12
- package/build/parsedPaper/research/index.js.map +1 -1
- package/build/parsedPaper/research/researches/Headings.js +5 -11
- package/build/parsedPaper/research/researches/Headings.js.map +1 -1
- package/build/parsedPaper/research/researches/LinkStatistics.js +6 -12
- package/build/parsedPaper/research/researches/LinkStatistics.js.map +1 -1
- package/build/parsedPaper/research/researches/Research.js +5 -10
- package/build/parsedPaper/research/researches/Research.js.map +1 -1
- package/build/parsedPaper/research/researches/index.js +1 -13
- package/build/parsedPaper/research/researches/index.js.map +1 -1
- package/build/parsedPaper/structure/tree/FormattingElement.js +3 -9
- package/build/parsedPaper/structure/tree/FormattingElement.js.map +1 -1
- package/build/parsedPaper/structure/tree/SourceCodeLocation.js +1 -7
- package/build/parsedPaper/structure/tree/SourceCodeLocation.js.map +1 -1
- package/build/parsedPaper/structure/tree/TextContainer.js +5 -10
- package/build/parsedPaper/structure/tree/TextContainer.js.map +1 -1
- package/build/parsedPaper/structure/tree/index.js +9 -74
- package/build/parsedPaper/structure/tree/index.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/Heading.js +3 -9
- package/build/parsedPaper/structure/tree/nodes/Heading.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/LeafNode.js +5 -12
- package/build/parsedPaper/structure/tree/nodes/LeafNode.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/List.js +5 -11
- package/build/parsedPaper/structure/tree/nodes/List.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/ListItem.js +3 -10
- package/build/parsedPaper/structure/tree/nodes/ListItem.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/MetadataMiscellaneous.js +3 -9
- package/build/parsedPaper/structure/tree/nodes/MetadataMiscellaneous.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/MetadataText.js +3 -9
- package/build/parsedPaper/structure/tree/nodes/MetadataText.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/Node.js +6 -12
- package/build/parsedPaper/structure/tree/nodes/Node.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/Paragraph.js +3 -9
- package/build/parsedPaper/structure/tree/nodes/Paragraph.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/StructuredNode.js +3 -10
- package/build/parsedPaper/structure/tree/nodes/StructuredNode.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/index.js +10 -69
- package/build/parsedPaper/structure/tree/nodes/index.js.map +1 -1
- package/build/scoring/assessments/assessment.js +17 -15
- package/build/scoring/assessments/assessment.js.map +1 -1
- package/build/scoring/assessments/index.js +53 -56
- package/build/scoring/assessments/index.js.map +1 -1
- package/build/scoring/assessments/readability/ParagraphTooLongAssessment.js +18 -21
- package/build/scoring/assessments/readability/ParagraphTooLongAssessment.js.map +1 -1
- package/build/scoring/assessments/readability/RelatedKeywordsAssessment.js +114 -0
- package/build/scoring/assessments/readability/RelatedKeywordsAssessment.js.map +1 -0
- package/build/scoring/assessments/readability/SentenceBeginningsAssessment.js +24 -27
- package/build/scoring/assessments/readability/SentenceBeginningsAssessment.js.map +1 -1
- package/build/scoring/assessments/readability/SentenceLengthInTextAssessment.js +23 -26
- package/build/scoring/assessments/readability/SentenceLengthInTextAssessment.js.map +1 -1
- package/build/scoring/assessments/readability/TransitionWordsAssessment.js +26 -29
- package/build/scoring/assessments/readability/TransitionWordsAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/ImageCountAssessment.js +18 -21
- package/build/scoring/assessments/seo/ImageCountAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/InternalLinksAssessment.js +19 -21
- package/build/scoring/assessments/seo/InternalLinksAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/IntroductionKeywordAssessment.js +21 -23
- package/build/scoring/assessments/seo/IntroductionKeywordAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/KeyphraseAssessment.js +17 -19
- package/build/scoring/assessments/seo/KeyphraseAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/KeyphraseLengthAssessment.js +21 -23
- package/build/scoring/assessments/seo/KeyphraseLengthAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/KeywordDensityAssessment.js +26 -27
- package/build/scoring/assessments/seo/KeywordDensityAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/MetaDescriptionKeywordAssessment.js +22 -25
- package/build/scoring/assessments/seo/MetaDescriptionKeywordAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/MetaDescriptionLengthAssessment.js +16 -19
- package/build/scoring/assessments/seo/MetaDescriptionLengthAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/MetaTitleKeywordAssessment.js +19 -22
- package/build/scoring/assessments/seo/MetaTitleKeywordAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/NumberInMetaTitleAssessment.js +15 -17
- package/build/scoring/assessments/seo/NumberInMetaTitleAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/OutboundLinksAssessment.js +19 -22
- package/build/scoring/assessments/seo/OutboundLinksAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/PageTitleWidthAssessment.js +15 -17
- package/build/scoring/assessments/seo/PageTitleWidthAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/SchemaAssessment.js +108 -0
- package/build/scoring/assessments/seo/SchemaAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/SingleH1Assessment.js +18 -20
- package/build/scoring/assessments/seo/SingleH1Assessment.js.map +1 -1
- package/build/scoring/assessments/seo/SingleTitleAssessment.js +18 -20
- package/build/scoring/assessments/seo/SingleTitleAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/SubHeadingsKeywordAssessment.js +17 -21
- package/build/scoring/assessments/seo/SubHeadingsKeywordAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/TextImagesAssessment.js +19 -22
- package/build/scoring/assessments/seo/TextImagesAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/TextLengthAssessment.js +18 -21
- package/build/scoring/assessments/seo/TextLengthAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/UrlKeywordAssessment.js +17 -19
- package/build/scoring/assessments/seo/UrlKeywordAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/UrlLengthAssessment.js +18 -21
- package/build/scoring/assessments/seo/UrlLengthAssessment.js.map +1 -1
- package/build/scoring/assessors/assessor.js +62 -33
- package/build/scoring/assessors/assessor.js.map +1 -1
- package/build/scoring/assessors/avadaAssessor.js +37 -16
- package/build/scoring/assessors/avadaAssessor.js.map +1 -1
- package/build/scoring/assessors/contentAssessor.js +16 -22
- package/build/scoring/assessors/contentAssessor.js.map +1 -1
- package/build/scoring/assessors/index.js +4 -34
- package/build/scoring/assessors/index.js.map +1 -1
- package/build/scoring/assessors/seoAssessor.js +26 -32
- package/build/scoring/assessors/seoAssessor.js.map +1 -1
- package/build/scoring/helpers/assessments/checkForTooLongSentences.js +3 -8
- package/build/scoring/helpers/assessments/checkForTooLongSentences.js.map +1 -1
- package/build/scoring/helpers/assessments/inRange.js +2 -10
- package/build/scoring/helpers/assessments/inRange.js.map +1 -1
- package/build/scoring/helpers/assessments/keyphraseLengthFactor.js +1 -7
- package/build/scoring/helpers/assessments/keyphraseLengthFactor.js.map +1 -1
- package/build/scoring/helpers/assessments/recommendedKeywordCount.js +5 -11
- package/build/scoring/helpers/assessments/recommendedKeywordCount.js.map +1 -1
- package/build/scoring/helpers/index.js +7 -15
- package/build/scoring/helpers/index.js.map +1 -1
- package/build/scoring/interpreters/index.js +2 -13
- package/build/scoring/interpreters/index.js.map +1 -1
- package/build/scoring/interpreters/scoreToRating.js +1 -7
- package/build/scoring/interpreters/scoreToRating.js.map +1 -1
- package/build/scoring/renderers/AssessorPresenter.js +12 -18
- package/build/scoring/renderers/AssessorPresenter.js.map +1 -1
- package/build/scoring/scoreAggregators/ReadabilityScoreAggregator.js +8 -14
- package/build/scoring/scoreAggregators/ReadabilityScoreAggregator.js.map +1 -1
- package/build/scoring/scoreAggregators/SEOScoreAggregator.js +3 -9
- package/build/scoring/scoreAggregators/SEOScoreAggregator.js.map +1 -1
- package/build/scoring/scoreAggregators/ScoreAggregator.js +1 -7
- package/build/scoring/scoreAggregators/ScoreAggregator.js.map +1 -1
- package/build/scoring/scoreAggregators/index.js +3 -27
- package/build/scoring/scoreAggregators/index.js.map +1 -1
- package/build/values/AssessmentResult.js +22 -28
- package/build/values/AssessmentResult.js.map +1 -1
- package/build/values/Mark.js +9 -15
- package/build/values/Mark.js.map +1 -1
- package/build/values/Paper.js +79 -15
- package/build/values/Paper.js.map +1 -1
- package/build/values/index.js +4 -27
- package/build/values/index.js.map +1 -1
- package/build/vendor/turkishStemmer.js +1 -7
- package/build/vendor/turkishStemmer.js.map +1 -1
- package/package.json +14 -2
- package/.browserslistrc +0 -1
- package/.gitattributes +0 -1
- package/babel.config.js +0 -3
- package/build/bundledPlugins/index.js +0 -14
- package/build/bundledPlugins/index.js.map +0 -1
- package/build/bundledPlugins/previouslyUsedKeywords.js +0 -171
- package/build/bundledPlugins/previouslyUsedKeywords.js.map +0 -1
- package/eslint.config.mjs +0 -119
- package/src/bundledPlugins/index.js +0 -5
- package/src/bundledPlugins/previouslyUsedKeywords.js +0 -192
- package/src/config/diacritics.js +0 -106
- package/src/config/getTransliterations.js +0 -1447
- package/src/config/transliterationsWPstyle.js +0 -774
- package/src/config/wordBoundaries.js +0 -23
- package/src/config/wordBoundariesWithoutPunctuation.js +0 -9
- package/src/const/analysis.js +0 -41
- package/src/errors/invalidType.js +0 -14
- package/src/errors/missingArgument.js +0 -14
- package/src/helpers/createMeasurementElement.js +0 -40
- package/src/helpers/domManipulation.js +0 -65
- package/src/helpers/errors.js +0 -26
- package/src/helpers/factory.js +0 -219
- package/src/helpers/formatNumber.js +0 -12
- package/src/helpers/formatString.js +0 -33
- package/src/helpers/getLanguagesWithWordComplexity.js +0 -8
- package/src/helpers/getLanguagesWithWordFormSupport.js +0 -11
- package/src/helpers/getWordComplexityConfig.js +0 -20
- package/src/helpers/getWordComplexityHelper.js +0 -20
- package/src/helpers/htmlEntities.js +0 -41
- package/src/helpers/includesAny.js +0 -19
- package/src/helpers/index.js +0 -127
- package/src/helpers/shortlinker/Shortlinker.js +0 -75
- package/src/helpers/shortlinker/index.js +0 -1
- package/src/helpers/shortlinker/singleton.js +0 -68
- package/src/helpers/types.js +0 -34
- package/src/index.js +0 -60
- package/src/languageProcessing/AbstractResearcher.js +0 -366
- package/src/languageProcessing/helpers/highlighting/getMarkingsInSentence.js +0 -125
- package/src/languageProcessing/helpers/html/getFieldsToMark.js +0 -29
- package/src/languageProcessing/helpers/html/getSubheadingTexts.js +0 -47
- package/src/languageProcessing/helpers/html/getSubheadings.js +0 -95
- package/src/languageProcessing/helpers/html/html.js +0 -176
- package/src/languageProcessing/helpers/html/htmlParser.js +0 -145
- package/src/languageProcessing/helpers/html/matchParagraphs.js +0 -62
- package/src/languageProcessing/helpers/html/normalizeHTML.js +0 -16
- package/src/languageProcessing/helpers/image/getAltAttribute.js +0 -20
- package/src/languageProcessing/helpers/image/getImagesInTree.js +0 -16
- package/src/languageProcessing/helpers/image/imageInText.js +0 -19
- package/src/languageProcessing/helpers/index.js +0 -12
- package/src/languageProcessing/helpers/language/getLanguage.js +0 -9
- package/src/languageProcessing/helpers/link/checkNofollow.js +0 -38
- package/src/languageProcessing/helpers/link/getAnchorsFromText.js +0 -32
- package/src/languageProcessing/helpers/link/getLinkType.js +0 -32
- package/src/languageProcessing/helpers/match/findKeywordFormsInString.js +0 -101
- package/src/languageProcessing/helpers/match/isDoubleQuoted.js +0 -13
- package/src/languageProcessing/helpers/match/matchTextWithArray.js +0 -36
- package/src/languageProcessing/helpers/match/matchTextWithTransliteration.js +0 -58
- package/src/languageProcessing/helpers/match/matchTextWithWord.js +0 -45
- package/src/languageProcessing/helpers/match/matchWordFormsWithSentence.js +0 -164
- package/src/languageProcessing/helpers/match/processExactMatchRequest.js +0 -20
- package/src/languageProcessing/helpers/morphology/baseStemmer.js +0 -11
- package/src/languageProcessing/helpers/morphology/buildFormRule.js +0 -19
- package/src/languageProcessing/helpers/morphology/buildTopicStems.js +0 -169
- package/src/languageProcessing/helpers/morphology/createRulesFromArrays.js +0 -45
- package/src/languageProcessing/helpers/morphology/exceptionListHelpers.js +0 -65
- package/src/languageProcessing/helpers/morphology/findMatchingEndingInArray.js +0 -24
- package/src/languageProcessing/helpers/morphology/flattenSortLength.js +0 -14
- package/src/languageProcessing/helpers/morphology/getAllWordsFromPaper.js +0 -39
- package/src/languageProcessing/helpers/morphology/regexHelpers.js +0 -44
- package/src/languageProcessing/helpers/morphology/stemHelpers.js +0 -38
- package/src/languageProcessing/helpers/morphology/stemPrefixedFunctionWords.js +0 -31
- package/src/languageProcessing/helpers/passiveVoice/periphrastic/directPrecedenceException.js +0 -36
- package/src/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/getClausesSplitOnStopWords.js +0 -113
- package/src/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/nonDirectParticiplePrecedenceException.js +0 -45
- package/src/languageProcessing/helpers/passiveVoice/periphrastic/getClauses.js +0 -231
- package/src/languageProcessing/helpers/passiveVoice/periphrastic/getIndicesWithRegex.js +0 -20
- package/src/languageProcessing/helpers/passiveVoice/periphrastic/matchRegularParticiples.js +0 -23
- package/src/languageProcessing/helpers/passiveVoice/periphrastic/precedenceException.js +0 -40
- package/src/languageProcessing/helpers/prominentWords/determineProminentWords.js +0 -238
- package/src/languageProcessing/helpers/regex/createRegexFromArray.js +0 -35
- package/src/languageProcessing/helpers/regex/createRegexFromDoubleArray.js +0 -34
- package/src/languageProcessing/helpers/regex/createWordRegex.js +0 -30
- package/src/languageProcessing/helpers/regex/matchStringWithRegex.js +0 -19
- package/src/languageProcessing/helpers/regex/searchAndReplaceWithOneRegex.js +0 -14
- package/src/languageProcessing/helpers/sanitize/doubleQuotes.js +0 -12
- package/src/languageProcessing/helpers/sanitize/filterShortcodesFromTree.js +0 -131
- package/src/languageProcessing/helpers/sanitize/mergeListItems.js +0 -24
- package/src/languageProcessing/helpers/sanitize/parseSynonyms.js +0 -20
- package/src/languageProcessing/helpers/sanitize/quotes.js +0 -46
- package/src/languageProcessing/helpers/sanitize/removeEmailAddresses.js +0 -12
- package/src/languageProcessing/helpers/sanitize/removePunctuation.js +0 -64
- package/src/languageProcessing/helpers/sanitize/removePunctuationExceptQuotes.js +0 -18
- package/src/languageProcessing/helpers/sanitize/removeSentenceTerminators.js +0 -13
- package/src/languageProcessing/helpers/sanitize/removeURLs.js +0 -13
- package/src/languageProcessing/helpers/sanitize/sanitizeLineBreakTag.js +0 -11
- package/src/languageProcessing/helpers/sanitize/sanitizeString.js +0 -18
- package/src/languageProcessing/helpers/sanitize/stripHTMLTags.js +0 -57
- package/src/languageProcessing/helpers/sanitize/stripNonTextTags.js +0 -15
- package/src/languageProcessing/helpers/sanitize/stripNumbers.js +0 -21
- package/src/languageProcessing/helpers/sanitize/stripSpaces.js +0 -23
- package/src/languageProcessing/helpers/sanitize/stripWordBoundaries.js +0 -65
- package/src/languageProcessing/helpers/sanitize/unifyWhitespace.js +0 -61
- package/src/languageProcessing/helpers/sentence/SentenceTokenizer.js +0 -640
- package/src/languageProcessing/helpers/sentence/countSentences.js +0 -20
- package/src/languageProcessing/helpers/sentence/getSentences.js +0 -65
- package/src/languageProcessing/helpers/sentence/getSentencesFromTree.js +0 -55
- package/src/languageProcessing/helpers/sentence/memoizedSentenceTokenizer.js +0 -28
- package/src/languageProcessing/helpers/sentence/sentencesLength.js +0 -31
- package/src/languageProcessing/helpers/syllables/DeviationFragment.js +0 -112
- package/src/languageProcessing/helpers/syllables/countSyllables.js +0 -182
- package/src/languageProcessing/helpers/syllables/syllableCountIterator.js +0 -56
- package/src/languageProcessing/helpers/syllables/syllableCountStep.js +0 -68
- package/src/languageProcessing/helpers/transform/transformWordsWithHyphens.js +0 -17
- package/src/languageProcessing/helpers/transliterate/replaceDiacritics.js +0 -22
- package/src/languageProcessing/helpers/transliterate/specialCharacterMappings.js +0 -214
- package/src/languageProcessing/helpers/transliterate/transliterate.js +0 -20
- package/src/languageProcessing/helpers/transliterate/transliterateWPstyle.js +0 -21
- package/src/languageProcessing/helpers/url/parseSlug.js +0 -10
- package/src/languageProcessing/helpers/url/url.js +0 -172
- package/src/languageProcessing/helpers/word/addWordboundary.js +0 -37
- package/src/languageProcessing/helpers/word/areWordsInSentence.js +0 -16
- package/src/languageProcessing/helpers/word/countMetaDescriptionLength.js +0 -18
- package/src/languageProcessing/helpers/word/countWords.js +0 -14
- package/src/languageProcessing/helpers/word/createPunctuationTokens.js +0 -42
- package/src/languageProcessing/helpers/word/filterWordsFromArray.js +0 -15
- package/src/languageProcessing/helpers/word/followsIndex.js +0 -25
- package/src/languageProcessing/helpers/word/getAllWordsFromTree.js +0 -23
- package/src/languageProcessing/helpers/word/getWords.js +0 -43
- package/src/languageProcessing/helpers/word/includesIndex.js +0 -30
- package/src/languageProcessing/helpers/word/indices.js +0 -146
- package/src/languageProcessing/helpers/word/markWordsInSentences.js +0 -173
- package/src/languageProcessing/helpers/word/matchWordInSentence.js +0 -61
- package/src/languageProcessing/helpers/word/splitIntoTokens.js +0 -46
- package/src/languageProcessing/index.js +0 -91
- package/src/languageProcessing/languages/_default/Researcher.js +0 -34
- package/src/languageProcessing/languages/_default/helpers/getStemmer.js +0 -11
- package/src/languageProcessing/languages/ar/Researcher.js +0 -46
- package/src/languageProcessing/languages/ar/config/firstWordExceptions.js +0 -14
- package/src/languageProcessing/languages/ar/config/functionWords.js +0 -329
- package/src/languageProcessing/languages/ar/config/internal/passiveVerbsWithLongVowel.js +0 -570
- package/src/languageProcessing/languages/ar/config/prefixedFunctionWords.js +0 -5
- package/src/languageProcessing/languages/ar/config/transitionWords.js +0 -19
- package/src/languageProcessing/languages/ar/config/twoPartTransitionWords.js +0 -7
- package/src/languageProcessing/languages/ar/helpers/createBasicWordForms.js +0 -32
- package/src/languageProcessing/languages/ar/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/ar/helpers/internal/stem.js +0 -632
- package/src/languageProcessing/languages/ar/helpers/isPassiveSentence.js +0 -33
- package/src/languageProcessing/languages/ca/Researcher.js +0 -43
- package/src/languageProcessing/languages/ca/config/sentenceLength.js +0 -3
- package/src/languageProcessing/languages/ca/config/transitionWords.js +0 -31
- package/src/languageProcessing/languages/ca/config/twoPartTransitionWords.js +0 -7
- package/src/languageProcessing/languages/ca/helpers/getStemmer.js +0 -11
- package/src/languageProcessing/languages/cs/Researcher.js +0 -44
- package/src/languageProcessing/languages/cs/config/firstWordExceptions.js +0 -15
- package/src/languageProcessing/languages/cs/config/functionWords.js +0 -121
- package/src/languageProcessing/languages/cs/config/internal/passiveVoiceAuxiliaries.js +0 -38
- package/src/languageProcessing/languages/cs/config/internal/passiveVoiceEndings.js +0 -54
- package/src/languageProcessing/languages/cs/config/stopWords.js +0 -42
- package/src/languageProcessing/languages/cs/config/transitionWords.js +0 -26
- package/src/languageProcessing/languages/cs/config/twoPartTransitionWords.js +0 -8
- package/src/languageProcessing/languages/cs/helpers/getClauses.js +0 -26
- package/src/languageProcessing/languages/cs/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/cs/helpers/internal/getParticiples.js +0 -16
- package/src/languageProcessing/languages/cs/helpers/internal/stem.js +0 -499
- package/src/languageProcessing/languages/cs/values/Clause.js +0 -34
- package/src/languageProcessing/languages/de/Researcher.js +0 -52
- package/src/languageProcessing/languages/de/config/firstWordExceptions.js +0 -17
- package/src/languageProcessing/languages/de/config/functionWords.js +0 -303
- package/src/languageProcessing/languages/de/config/internal/exceptionsParticiplesActive.js +0 -2231
- package/src/languageProcessing/languages/de/config/internal/passiveVoiceAuxiliaries.js +0 -96
- package/src/languageProcessing/languages/de/config/internal/passiveVoiceIrregulars.js +0 -368
- package/src/languageProcessing/languages/de/config/internal/passiveVoiceRegex.js +0 -72
- package/src/languageProcessing/languages/de/config/keyphraseLength.js +0 -11
- package/src/languageProcessing/languages/de/config/stopWords.js +0 -67
- package/src/languageProcessing/languages/de/config/syllables.json +0 -460
- package/src/languageProcessing/languages/de/config/transitionWords.js +0 -31
- package/src/languageProcessing/languages/de/config/twoPartTransitionWords.js +0 -12
- package/src/languageProcessing/languages/de/config/wordComplexity.js +0 -4
- package/src/languageProcessing/languages/de/helpers/calculateFleschReadingScore.js +0 -18
- package/src/languageProcessing/languages/de/helpers/checkIfWordIsComplex.js +0 -40
- package/src/languageProcessing/languages/de/helpers/checkIfWordIsFunction.js +0 -15
- package/src/languageProcessing/languages/de/helpers/getClauses.js +0 -25
- package/src/languageProcessing/languages/de/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/de/helpers/internal/SentenceTokenizer.js +0 -31
- package/src/languageProcessing/languages/de/helpers/internal/detectAndStemRegularParticiple.js +0 -128
- package/src/languageProcessing/languages/de/helpers/internal/determineStem.js +0 -128
- package/src/languageProcessing/languages/de/helpers/internal/getParticiples.js +0 -40
- package/src/languageProcessing/languages/de/helpers/internal/stem.js +0 -215
- package/src/languageProcessing/languages/de/helpers/memoizedSentenceTokenizer.js +0 -28
- package/src/languageProcessing/languages/de/values/Clause.js +0 -85
- package/src/languageProcessing/languages/el/Researcher.js +0 -46
- package/src/languageProcessing/languages/el/config/firstWordExceptions.js +0 -47
- package/src/languageProcessing/languages/el/config/functionWords.js +0 -116
- package/src/languageProcessing/languages/el/config/internal/auxiliaries.js +0 -19
- package/src/languageProcessing/languages/el/config/internal/morphologicalPassiveSuffixes.js +0 -87
- package/src/languageProcessing/languages/el/config/internal/nonPassiveVerbStems.js +0 -138
- package/src/languageProcessing/languages/el/config/stopWords.js +0 -854
- package/src/languageProcessing/languages/el/config/transitionWords.js +0 -26
- package/src/languageProcessing/languages/el/config/twoPartTransitionWords.js +0 -10
- package/src/languageProcessing/languages/el/helpers/getClauses.js +0 -25
- package/src/languageProcessing/languages/el/helpers/getStemmer.js +0 -21
- package/src/languageProcessing/languages/el/helpers/internal/getParticiples.js +0 -20
- package/src/languageProcessing/languages/el/helpers/internal/stem.js +0 -368
- package/src/languageProcessing/languages/el/helpers/isPassiveSentence.js +0 -38
- package/src/languageProcessing/languages/el/values/Clause.js +0 -37
- package/src/languageProcessing/languages/en/Researcher.js +0 -46
- package/src/languageProcessing/languages/en/config/abbreviations.js +0 -55
- package/src/languageProcessing/languages/en/config/firstWordExceptions.js +0 -14
- package/src/languageProcessing/languages/en/config/functionWords.js +0 -186
- package/src/languageProcessing/languages/en/config/internal/passiveVoiceAuxiliaries.js +0 -44
- package/src/languageProcessing/languages/en/config/internal/passiveVoiceIrregulars.js +0 -354
- package/src/languageProcessing/languages/en/config/internal/passiveVoiceNonVerbEndingEd.js +0 -3047
- package/src/languageProcessing/languages/en/config/regularParticiplesRegex.js +0 -5
- package/src/languageProcessing/languages/en/config/stopWords.js +0 -52
- package/src/languageProcessing/languages/en/config/syllables.json +0 -86
- package/src/languageProcessing/languages/en/config/transitionWords.js +0 -48
- package/src/languageProcessing/languages/en/config/twoPartTransitionWords.js +0 -7
- package/src/languageProcessing/languages/en/config/wordComplexity.js +0 -5
- package/src/languageProcessing/languages/en/helpers/calculateFleschReadingScore.js +0 -18
- package/src/languageProcessing/languages/en/helpers/checkIfWordIsComplex.js +0 -43
- package/src/languageProcessing/languages/en/helpers/getClauses.js +0 -49
- package/src/languageProcessing/languages/en/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/en/helpers/internal/determineStem.js +0 -178
- package/src/languageProcessing/languages/en/helpers/internal/getAdjectiveStem.js +0 -162
- package/src/languageProcessing/languages/en/helpers/internal/getParticiples.js +0 -25
- package/src/languageProcessing/languages/en/helpers/internal/getVerbStem.js +0 -237
- package/src/languageProcessing/languages/en/values/Clause.js +0 -68
- package/src/languageProcessing/languages/es/Researcher.js +0 -48
- package/src/languageProcessing/languages/es/config/firstWordExceptions.js +0 -16
- package/src/languageProcessing/languages/es/config/functionWords.js +0 -321
- package/src/languageProcessing/languages/es/config/internal/passiveVoiceAuxiliaries.js +0 -60
- package/src/languageProcessing/languages/es/config/internal/passiveVoiceParticiples.js +0 -7327
- package/src/languageProcessing/languages/es/config/sentenceLength.js +0 -3
- package/src/languageProcessing/languages/es/config/stopWords.js +0 -33
- package/src/languageProcessing/languages/es/config/syllables.json +0 -176
- package/src/languageProcessing/languages/es/config/transitionWords.js +0 -40
- package/src/languageProcessing/languages/es/config/twoPartTransitionWords.js +0 -10
- package/src/languageProcessing/languages/es/config/wordComplexity.js +0 -4
- package/src/languageProcessing/languages/es/helpers/calculateFleschReadingScore.js +0 -18
- package/src/languageProcessing/languages/es/helpers/checkIfWordIsComplex.js +0 -56
- package/src/languageProcessing/languages/es/helpers/getClauses.js +0 -29
- package/src/languageProcessing/languages/es/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/es/helpers/internal/checkVerbStemModifications.js +0 -41
- package/src/languageProcessing/languages/es/helpers/internal/getParticiples.js +0 -35
- package/src/languageProcessing/languages/es/helpers/internal/stem.js +0 -793
- package/src/languageProcessing/languages/es/values/Clause.js +0 -47
- package/src/languageProcessing/languages/fa/Researcher.js +0 -47
- package/src/languageProcessing/languages/fa/config/firstWordExceptions.js +0 -12
- package/src/languageProcessing/languages/fa/config/functionWords.js +0 -122
- package/src/languageProcessing/languages/fa/config/internal/participles.js +0 -1429
- package/src/languageProcessing/languages/fa/config/sentenceLength.js +0 -3
- package/src/languageProcessing/languages/fa/config/transitionWords.js +0 -20
- package/src/languageProcessing/languages/fa/config/twoPartTransitionWords.js +0 -9
- package/src/languageProcessing/languages/fa/helpers/createBasicWordForms.js +0 -97
- package/src/languageProcessing/languages/fa/helpers/getStemmer.js +0 -13
- package/src/languageProcessing/languages/fa/helpers/isPassiveSentence.js +0 -14
- package/src/languageProcessing/languages/fr/Researcher.js +0 -46
- package/src/languageProcessing/languages/fr/config/firstWordExceptions.js +0 -16
- package/src/languageProcessing/languages/fr/config/functionWords.js +0 -281
- package/src/languageProcessing/languages/fr/config/internal/exceptionsParticiplesActive.js +0 -1510
- package/src/languageProcessing/languages/fr/config/internal/passiveVoiceAuxiliaries.js +0 -108
- package/src/languageProcessing/languages/fr/config/internal/passiveVoiceIrregulars.js +0 -565
- package/src/languageProcessing/languages/fr/config/stopWords.js +0 -119
- package/src/languageProcessing/languages/fr/config/syllables.json +0 -1426
- package/src/languageProcessing/languages/fr/config/transitionWords.js +0 -59
- package/src/languageProcessing/languages/fr/config/twoPartTransitionWords.js +0 -15
- package/src/languageProcessing/languages/fr/config/wordComplexity.js +0 -4
- package/src/languageProcessing/languages/fr/helpers/calculateFleschReadingScore.js +0 -18
- package/src/languageProcessing/languages/fr/helpers/checkIfWordIsComplex.js +0 -67
- package/src/languageProcessing/languages/fr/helpers/getClauses.js +0 -34
- package/src/languageProcessing/languages/fr/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/fr/helpers/internal/getParticiples.js +0 -72
- package/src/languageProcessing/languages/fr/helpers/internal/stem.js +0 -633
- package/src/languageProcessing/languages/fr/values/Clause.js +0 -96
- package/src/languageProcessing/languages/he/Researcher.js +0 -50
- package/src/languageProcessing/languages/he/config/firstWordExceptions.js +0 -13
- package/src/languageProcessing/languages/he/config/functionWords.js +0 -564
- package/src/languageProcessing/languages/he/config/internal/regularRootsHufal.js +0 -186
- package/src/languageProcessing/languages/he/config/internal/regularRootsNifal.js +0 -195
- package/src/languageProcessing/languages/he/config/internal/regularRootsPual.js +0 -168
- package/src/languageProcessing/languages/he/config/passiveVoice/regularRootsHufal.js +0 -188
- package/src/languageProcessing/languages/he/config/passiveVoice/regularRootsNifal.js +0 -197
- package/src/languageProcessing/languages/he/config/passiveVoice/regularRootsPual.js +0 -170
- package/src/languageProcessing/languages/he/config/prefixedFunctionWords.js +0 -2
- package/src/languageProcessing/languages/he/config/sentenceLength.js +0 -3
- package/src/languageProcessing/languages/he/config/transitionWords.js +0 -28
- package/src/languageProcessing/languages/he/config/twoPartTransitionWords.js +0 -8
- package/src/languageProcessing/languages/he/helpers/createBasicWordForms.js +0 -33
- package/src/languageProcessing/languages/he/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/he/helpers/internal/stem.js +0 -52
- package/src/languageProcessing/languages/he/helpers/isPassiveSentence.js +0 -96
- package/src/languageProcessing/languages/he/helpers/stem.js +0 -52
- package/src/languageProcessing/languages/hu/Researcher.js +0 -48
- package/src/languageProcessing/languages/hu/config/firstWordExceptions.js +0 -31
- package/src/languageProcessing/languages/hu/config/functionWords.js +0 -284
- package/src/languageProcessing/languages/hu/config/internal/auxiliaries.js +0 -97
- package/src/languageProcessing/languages/hu/config/internal/morphologicalPassiveAffixes.js +0 -125
- package/src/languageProcessing/languages/hu/config/internal/nonPassivesInVaAndVe.js +0 -265
- package/src/languageProcessing/languages/hu/config/internal/odikVerbs.js +0 -273
- package/src/languageProcessing/languages/hu/config/internal/participles.js +0 -412
- package/src/languageProcessing/languages/hu/config/stopWords.js +0 -213
- package/src/languageProcessing/languages/hu/config/transitionWords.js +0 -42
- package/src/languageProcessing/languages/hu/config/twoPartTransitionWords.js +0 -34
- package/src/languageProcessing/languages/hu/helpers/getClauses.js +0 -25
- package/src/languageProcessing/languages/hu/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/hu/helpers/internal/getParticiples.js +0 -21
- package/src/languageProcessing/languages/hu/helpers/internal/stem.js +0 -389
- package/src/languageProcessing/languages/hu/helpers/isPassiveSentence.js +0 -54
- package/src/languageProcessing/languages/hu/values/Clause.js +0 -41
- package/src/languageProcessing/languages/id/Researcher.js +0 -46
- package/src/languageProcessing/languages/id/config/firstWordExceptions.js +0 -13
- package/src/languageProcessing/languages/id/config/functionWords.js +0 -202
- package/src/languageProcessing/languages/id/config/internal/nonPassiveVerbsStartingDi.js +0 -215
- package/src/languageProcessing/languages/id/config/transitionWords.js +0 -62
- package/src/languageProcessing/languages/id/config/twoPartTransitionWords.js +0 -13
- package/src/languageProcessing/languages/id/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/id/helpers/internal/stem.js +0 -462
- package/src/languageProcessing/languages/id/helpers/internal/stemHelpers.js +0 -78
- package/src/languageProcessing/languages/id/helpers/isPassiveSentence.js +0 -39
- package/src/languageProcessing/languages/id/helpers/splitIntoTokensCustom.js +0 -47
- package/src/languageProcessing/languages/it/Researcher.js +0 -48
- package/src/languageProcessing/languages/it/config/firstWordExceptions.js +0 -17
- package/src/languageProcessing/languages/it/config/functionWords.js +0 -277
- package/src/languageProcessing/languages/it/config/internal/passiveVoiceAuxiliaries.js +0 -98
- package/src/languageProcessing/languages/it/config/internal/passiveVoiceParticiples.js +0 -7197
- package/src/languageProcessing/languages/it/config/sentenceLength.js +0 -3
- package/src/languageProcessing/languages/it/config/stopWords.js +0 -57
- package/src/languageProcessing/languages/it/config/syllables.json +0 -573
- package/src/languageProcessing/languages/it/config/transitionWords.js +0 -104
- package/src/languageProcessing/languages/it/config/twoPartTransitionWords.js +0 -9
- package/src/languageProcessing/languages/it/helpers/calculateFleschReadingScore.js +0 -15
- package/src/languageProcessing/languages/it/helpers/getClauses.js +0 -32
- package/src/languageProcessing/languages/it/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/it/helpers/internal/getParticiples.js +0 -34
- package/src/languageProcessing/languages/it/helpers/internal/stem.js +0 -436
- package/src/languageProcessing/languages/it/values/Clause.js +0 -47
- package/src/languageProcessing/languages/ja/Researcher.js +0 -86
- package/src/languageProcessing/languages/ja/config/assessmentApplicabilityCharacterCount.js +0 -4
- package/src/languageProcessing/languages/ja/config/firstWordExceptions.js +0 -8
- package/src/languageProcessing/languages/ja/config/functionWords.js +0 -563
- package/src/languageProcessing/languages/ja/config/keyphraseLength.js +0 -16
- package/src/languageProcessing/languages/ja/config/metaDescriptionLength.js +0 -4
- package/src/languageProcessing/languages/ja/config/paragraphLength.js +0 -10
- package/src/languageProcessing/languages/ja/config/sentenceLength.js +0 -4
- package/src/languageProcessing/languages/ja/config/subheadingsTooLong.js +0 -18
- package/src/languageProcessing/languages/ja/config/textLength.js +0 -47
- package/src/languageProcessing/languages/ja/config/topicLength.js +0 -5
- package/src/languageProcessing/languages/ja/config/transitionWords.js +0 -354
- package/src/languageProcessing/languages/ja/customResearches/findKeyphraseInSEOTitle.js +0 -98
- package/src/languageProcessing/languages/ja/customResearches/getKeyphraseLength.js +0 -19
- package/src/languageProcessing/languages/ja/customResearches/getWordForms.js +0 -50
- package/src/languageProcessing/languages/ja/customResearches/textLength.js +0 -24
- package/src/languageProcessing/languages/ja/helpers/countCharacters.js +0 -19
- package/src/languageProcessing/languages/ja/helpers/customGetStemmer.js +0 -21
- package/src/languageProcessing/languages/ja/helpers/getContentWords.js +0 -21
- package/src/languageProcessing/languages/ja/helpers/getWords.js +0 -31
- package/src/languageProcessing/languages/ja/helpers/internal/SentenceTokenizer.js +0 -102
- package/src/languageProcessing/languages/ja/helpers/internal/createWordForms.js +0 -68
- package/src/languageProcessing/languages/ja/helpers/internal/determineStem.js +0 -17
- package/src/languageProcessing/languages/ja/helpers/matchTextWithWord.js +0 -53
- package/src/languageProcessing/languages/ja/helpers/matchTransitionWords.js +0 -25
- package/src/languageProcessing/languages/ja/helpers/memoizedSentenceTokenizer.js +0 -28
- package/src/languageProcessing/languages/ja/helpers/splitIntoTokensCustom.js +0 -20
- package/src/languageProcessing/languages/ja/helpers/wordsCharacterCount.js +0 -13
- package/src/languageProcessing/languages/nb/Researcher.js +0 -45
- package/src/languageProcessing/languages/nb/config/firstWordExceptions.js +0 -12
- package/src/languageProcessing/languages/nb/config/functionWords.js +0 -106
- package/src/languageProcessing/languages/nb/config/internal/participles.js +0 -3127
- package/src/languageProcessing/languages/nb/config/internal/passiveVoiceAuxiliaries.js +0 -15
- package/src/languageProcessing/languages/nb/config/stopWords.js +0 -39
- package/src/languageProcessing/languages/nb/config/transitionWords.js +0 -21
- package/src/languageProcessing/languages/nb/config/twoPartTransitionWords.js +0 -10
- package/src/languageProcessing/languages/nb/helpers/getClauses.js +0 -28
- package/src/languageProcessing/languages/nb/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/nb/helpers/internal/getParticiples.js +0 -24
- package/src/languageProcessing/languages/nb/helpers/internal/stem.js +0 -133
- package/src/languageProcessing/languages/nb/values/Clause.js +0 -43
- package/src/languageProcessing/languages/nl/Researcher.js +0 -48
- package/src/languageProcessing/languages/nl/config/firstWordExceptions.js +0 -15
- package/src/languageProcessing/languages/nl/config/functionWords.js +0 -233
- package/src/languageProcessing/languages/nl/config/internal/nonParticiples.js +0 -2515
- package/src/languageProcessing/languages/nl/config/internal/passiveVoiceAuxiliaries.js +0 -13
- package/src/languageProcessing/languages/nl/config/internal/passiveVoiceIrregulars.js +0 -474
- package/src/languageProcessing/languages/nl/config/keyphraseLength.js +0 -10
- package/src/languageProcessing/languages/nl/config/stopWords.js +0 -35
- package/src/languageProcessing/languages/nl/config/syllables.json +0 -343
- package/src/languageProcessing/languages/nl/config/transitionWords.js +0 -22
- package/src/languageProcessing/languages/nl/config/twoPartTransitionWords.js +0 -8
- package/src/languageProcessing/languages/nl/helpers/calculateFleschReadingScore.js +0 -15
- package/src/languageProcessing/languages/nl/helpers/getClauses.js +0 -25
- package/src/languageProcessing/languages/nl/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/nl/helpers/internal/checkExceptionsWithFullForms.js +0 -128
- package/src/languageProcessing/languages/nl/helpers/internal/detectAndStemRegularParticiple.js +0 -324
- package/src/languageProcessing/languages/nl/helpers/internal/detectAndStemSuffixes.js +0 -164
- package/src/languageProcessing/languages/nl/helpers/internal/determineStem.js +0 -133
- package/src/languageProcessing/languages/nl/helpers/internal/getParticiples.js +0 -25
- package/src/languageProcessing/languages/nl/helpers/internal/getStemWordsWithTAndDEnding.js +0 -183
- package/src/languageProcessing/languages/nl/helpers/internal/stem.js +0 -146
- package/src/languageProcessing/languages/nl/helpers/internal/stemModificationHelpers.js +0 -109
- package/src/languageProcessing/languages/nl/helpers/internal/stemTOrDFromEndOfWord.js +0 -65
- package/src/languageProcessing/languages/nl/values/Clause.js +0 -62
- package/src/languageProcessing/languages/pl/Researcher.js +0 -47
- package/src/languageProcessing/languages/pl/config/firstWordExceptions.js +0 -12
- package/src/languageProcessing/languages/pl/config/functionWords.js +0 -421
- package/src/languageProcessing/languages/pl/config/internal/auxiliaries.js +0 -85
- package/src/languageProcessing/languages/pl/config/internal/participles.js +0 -26433
- package/src/languageProcessing/languages/pl/config/sentenceLength.js +0 -10
- package/src/languageProcessing/languages/pl/config/stopWords.js +0 -36
- package/src/languageProcessing/languages/pl/config/transitionWords.js +0 -42
- package/src/languageProcessing/languages/pl/config/twoPartTransitionWords.js +0 -8
- package/src/languageProcessing/languages/pl/helpers/getClauses.js +0 -25
- package/src/languageProcessing/languages/pl/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/pl/helpers/internal/getParticiples.js +0 -18
- package/src/languageProcessing/languages/pl/helpers/internal/stem.js +0 -161
- package/src/languageProcessing/languages/pl/values/Clause.js +0 -53
- package/src/languageProcessing/languages/pt/Researcher.js +0 -48
- package/src/languageProcessing/languages/pt/config/firstWordExceptions.js +0 -15
- package/src/languageProcessing/languages/pt/config/functionWords.js +0 -226
- package/src/languageProcessing/languages/pt/config/internal/passiveVoiceAuxiliaries.js +0 -66
- package/src/languageProcessing/languages/pt/config/internal/passiveVoiceParticiples.js +0 -4088
- package/src/languageProcessing/languages/pt/config/sentenceLength.js +0 -3
- package/src/languageProcessing/languages/pt/config/stopWords.js +0 -50
- package/src/languageProcessing/languages/pt/config/syllables.json +0 -38
- package/src/languageProcessing/languages/pt/config/transitionWords.js +0 -34
- package/src/languageProcessing/languages/pt/config/twoPartTransitionWords.js +0 -9
- package/src/languageProcessing/languages/pt/helpers/calculateFleschReadingScore.js +0 -15
- package/src/languageProcessing/languages/pt/helpers/getClauses.js +0 -29
- package/src/languageProcessing/languages/pt/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/pt/helpers/internal/getParticiples.js +0 -35
- package/src/languageProcessing/languages/pt/helpers/internal/stem.js +0 -319
- package/src/languageProcessing/languages/pt/values/Clause.js +0 -43
- package/src/languageProcessing/languages/ru/Researcher.js +0 -48
- package/src/languageProcessing/languages/ru/config/firstWordExceptions.js +0 -14
- package/src/languageProcessing/languages/ru/config/fleschReadingEaseScores.js +0 -20
- package/src/languageProcessing/languages/ru/config/functionWords.js +0 -519
- package/src/languageProcessing/languages/ru/config/internal/participlesShortenedList.js +0 -2914
- package/src/languageProcessing/languages/ru/config/internal/passiveVoiceParticiples.js +0 -6295
- package/src/languageProcessing/languages/ru/config/sentenceLength.js +0 -3
- package/src/languageProcessing/languages/ru/config/syllables.json +0 -19
- package/src/languageProcessing/languages/ru/config/transitionWords.js +0 -62
- package/src/languageProcessing/languages/ru/config/twoPartTransitionWords.js +0 -14
- package/src/languageProcessing/languages/ru/helpers/calculateFleschReadingScore.js +0 -16
- package/src/languageProcessing/languages/ru/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/ru/helpers/internal/stem.js +0 -288
- package/src/languageProcessing/languages/ru/helpers/isPassiveSentence.js +0 -14
- package/src/languageProcessing/languages/sk/Researcher.js +0 -46
- package/src/languageProcessing/languages/sk/config/firstWordExceptions.js +0 -14
- package/src/languageProcessing/languages/sk/config/functionWords.js +0 -855
- package/src/languageProcessing/languages/sk/config/internal/nonPassives.js +0 -1074
- package/src/languageProcessing/languages/sk/config/internal/passiveVoiceAuxiliaries.js +0 -22
- package/src/languageProcessing/languages/sk/config/stopWords.js +0 -34
- package/src/languageProcessing/languages/sk/config/transitionWords.js +0 -23
- package/src/languageProcessing/languages/sk/config/twoPartTransitionWords.js +0 -10
- package/src/languageProcessing/languages/sk/helpers/getClauses.js +0 -26
- package/src/languageProcessing/languages/sk/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/sk/helpers/internal/getParticiples.js +0 -16
- package/src/languageProcessing/languages/sk/helpers/internal/stem.js +0 -319
- package/src/languageProcessing/languages/sk/values/Clause.js +0 -39
- package/src/languageProcessing/languages/sv/Researcher.js +0 -45
- package/src/languageProcessing/languages/sv/config/firstWordExceptions.js +0 -15
- package/src/languageProcessing/languages/sv/config/functionWords.js +0 -176
- package/src/languageProcessing/languages/sv/config/internal/passiveVerbs.js +0 -10400
- package/src/languageProcessing/languages/sv/config/keyphraseLength.js +0 -11
- package/src/languageProcessing/languages/sv/config/transitionWords.js +0 -35
- package/src/languageProcessing/languages/sv/config/twoPartTransitionWords.js +0 -8
- package/src/languageProcessing/languages/sv/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/sv/helpers/internal/stem.js +0 -152
- package/src/languageProcessing/languages/sv/helpers/isPassiveSentence.js +0 -14
- package/src/languageProcessing/languages/tr/Researcher.js +0 -44
- package/src/languageProcessing/languages/tr/config/firstWordExceptions.js +0 -13
- package/src/languageProcessing/languages/tr/config/functionWords.js +0 -116
- package/src/languageProcessing/languages/tr/config/internal/nonPassiveExceptions.js +0 -574
- package/src/languageProcessing/languages/tr/config/internal/passiveEndings.js +0 -151
- package/src/languageProcessing/languages/tr/config/sentenceLength.js +0 -7
- package/src/languageProcessing/languages/tr/config/transitionWords.js +0 -42
- package/src/languageProcessing/languages/tr/config/twoPartTransitionWords.js +0 -7
- package/src/languageProcessing/languages/tr/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/tr/helpers/internal/stem.js +0 -20
- package/src/languageProcessing/languages/tr/helpers/isPassiveSentence.js +0 -43
- package/src/languageProcessing/researches/altTagCount.js +0 -70
- package/src/languageProcessing/researches/countSentencesFromText.js +0 -19
- package/src/languageProcessing/researches/findKeyphraseInSEOTitle.js +0 -257
- package/src/languageProcessing/researches/findKeywordInFirstParagraph.js +0 -86
- package/src/languageProcessing/researches/findTransitionWords.js +0 -123
- package/src/languageProcessing/researches/functionWordsInKeyphrase.js +0 -44
- package/src/languageProcessing/researches/getAnchorsWithKeyphrase.js +0 -227
- package/src/languageProcessing/researches/getFleschReadingScore.js +0 -150
- package/src/languageProcessing/researches/getKeywordDensity.js +0 -44
- package/src/languageProcessing/researches/getLinkStatistics.js +0 -54
- package/src/languageProcessing/researches/getLinks.js +0 -18
- package/src/languageProcessing/researches/getLongCenterAlignedTexts.js +0 -37
- package/src/languageProcessing/researches/getParagraphLength.js +0 -44
- package/src/languageProcessing/researches/getParagraphs.js +0 -18
- package/src/languageProcessing/researches/getPassiveVoiceResult.js +0 -129
- package/src/languageProcessing/researches/getProminentWordsForInsights.js +0 -48
- package/src/languageProcessing/researches/getProminentWordsForInternalLinking.js +0 -119
- package/src/languageProcessing/researches/getSentenceBeginnings.js +0 -124
- package/src/languageProcessing/researches/getSubheadingTextLengths.js +0 -59
- package/src/languageProcessing/researches/getWordForms.js +0 -204
- package/src/languageProcessing/researches/h1s.js +0 -10
- package/src/languageProcessing/researches/imageCount.js +0 -16
- package/src/languageProcessing/researches/index.js +0 -5
- package/src/languageProcessing/researches/keyphraseDistribution.js +0 -249
- package/src/languageProcessing/researches/keyphraseLength.js +0 -17
- package/src/languageProcessing/researches/keywordCount.js +0 -134
- package/src/languageProcessing/researches/keywordCountInUrl.js +0 -57
- package/src/languageProcessing/researches/matchKeywordInSubheadings.js +0 -62
- package/src/languageProcessing/researches/metaDescriptionKeyword.js +0 -85
- package/src/languageProcessing/researches/metaDescriptionLength.js +0 -12
- package/src/languageProcessing/researches/pageTitleWidth.js +0 -11
- package/src/languageProcessing/researches/readingTime.js +0 -82
- package/src/languageProcessing/researches/sentences.js +0 -20
- package/src/languageProcessing/researches/videoCount.js +0 -32
- package/src/languageProcessing/researches/wordComplexity.js +0 -129
- package/src/languageProcessing/researches/wordCountInText.js +0 -29
- package/src/languageProcessing/values/Clause.js +0 -108
- package/src/languageProcessing/values/ProminentWord.js +0 -95
- package/src/languageProcessing/values/Sentence.js +0 -111
- package/src/languageProcessing/values/index.js +0 -9
- package/src/markers/addMark.js +0 -9
- package/src/markers/addMarkSingleWord.js +0 -32
- package/src/markers/index.js +0 -7
- package/src/markers/removeDuplicateMarks.js +0 -27
- package/src/markers/removeMarks.js +0 -11
- package/src/parse/build/build.js +0 -52
- package/src/parse/build/index.js +0 -10
- package/src/parse/build/private/adapt.js +0 -113
- package/src/parse/build/private/adaptAttributes.js +0 -36
- package/src/parse/build/private/alwaysFilterElements.js +0 -75
- package/src/parse/build/private/combineIntoImplicitParagraphs.js +0 -130
- package/src/parse/build/private/filterBeforeTokenizing.js +0 -32
- package/src/parse/build/private/filterHelpers.js +0 -44
- package/src/parse/build/private/filterTree.js +0 -42
- package/src/parse/build/private/getTextElementPositions.js +0 -184
- package/src/parse/build/private/helpers/parseClassAttribute.js +0 -9
- package/src/parse/build/private/isPhrasingContent.js +0 -28
- package/src/parse/build/private/parseBlocks.js +0 -151
- package/src/parse/build/private/tokenize.js +0 -74
- package/src/parse/language/LanguageProcessor.js +0 -74
- package/src/parse/structure/Heading.js +0 -26
- package/src/parse/structure/Node.js +0 -69
- package/src/parse/structure/Paragraph.js +0 -48
- package/src/parse/structure/Sentence.js +0 -30
- package/src/parse/structure/SourceCodeLocation.js +0 -41
- package/src/parse/structure/Text.js +0 -27
- package/src/parse/structure/Token.js +0 -24
- package/src/parse/structure/index.js +0 -16
- package/src/parse/traverse/findAllInTree.js +0 -58
- package/src/parse/traverse/index.js +0 -12
- package/src/parse/traverse/innerText.js +0 -26
- package/src/parsedPaper/ParsedPaper.js +0 -92
- package/src/parsedPaper/assess/TreeAssessor.js +0 -184
- package/src/parsedPaper/assess/assessmentListFactories.js +0 -73
- package/src/parsedPaper/assess/assessments/Assessment.js +0 -79
- package/src/parsedPaper/assess/assessments/index.js +0 -6
- package/src/parsedPaper/assess/assessorFactories.js +0 -104
- package/src/parsedPaper/assess/cornerstone/assessmentListFactories.js +0 -47
- package/src/parsedPaper/assess/cornerstone/index.js +0 -5
- package/src/parsedPaper/assess/index.js +0 -20
- package/src/parsedPaper/build/PaperParser.js +0 -105
- package/src/parsedPaper/build/linguisticParsing/Sentence.js +0 -89
- package/src/parsedPaper/build/linguisticParsing/SentenceTokenizer.js +0 -323
- package/src/parsedPaper/build/linguisticParsing/parseText.js +0 -20
- package/src/parsedPaper/build/tree/TreeBuilder.js +0 -75
- package/src/parsedPaper/build/tree/cleanup/calculateTextIndices.js +0 -190
- package/src/parsedPaper/build/tree/cleanup/getElementContent.js +0 -21
- package/src/parsedPaper/build/tree/cleanup/postParsing.js +0 -37
- package/src/parsedPaper/build/tree/html/HTMLTreeConverter.js +0 -230
- package/src/parsedPaper/build/tree/html/buildTree.js +0 -31
- package/src/parsedPaper/build/tree/html/htmlConstants.js +0 -37
- package/src/parsedPaper/build/tree/index.js +0 -14
- package/src/parsedPaper/build/tree/metadata/buildTree.js +0 -32
- package/src/parsedPaper/research/TreeResearcher.js +0 -134
- package/src/parsedPaper/research/index.js +0 -13
- package/src/parsedPaper/research/researches/Headings.js +0 -20
- package/src/parsedPaper/research/researches/LinkStatistics.js +0 -128
- package/src/parsedPaper/research/researches/Research.js +0 -50
- package/src/parsedPaper/research/researches/index.js +0 -1
- package/src/parsedPaper/structure/tree/FormattingElement.js +0 -67
- package/src/parsedPaper/structure/tree/SourceCodeLocation.js +0 -31
- package/src/parsedPaper/structure/tree/TextContainer.js +0 -85
- package/src/parsedPaper/structure/tree/index.js +0 -22
- package/src/parsedPaper/structure/tree/nodes/Heading.js +0 -26
- package/src/parsedPaper/structure/tree/nodes/LeafNode.js +0 -75
- package/src/parsedPaper/structure/tree/nodes/List.js +0 -47
- package/src/parsedPaper/structure/tree/nodes/ListItem.js +0 -26
- package/src/parsedPaper/structure/tree/nodes/MetadataMiscellaneous.js +0 -46
- package/src/parsedPaper/structure/tree/nodes/MetadataText.js +0 -26
- package/src/parsedPaper/structure/tree/nodes/Node.js +0 -154
- package/src/parsedPaper/structure/tree/nodes/Paragraph.js +0 -24
- package/src/parsedPaper/structure/tree/nodes/StructuredNode.js +0 -52
- package/src/parsedPaper/structure/tree/nodes/index.js +0 -21
- package/src/scoring/assessments/assessment.js +0 -63
- package/src/scoring/assessments/index.js +0 -58
- package/src/scoring/assessments/readability/ParagraphTooLongAssessment.js +0 -173
- package/src/scoring/assessments/readability/SentenceBeginningsAssessment.js +0 -132
- package/src/scoring/assessments/readability/SentenceLengthInTextAssessment.js +0 -186
- package/src/scoring/assessments/readability/TransitionWordsAssessment.js +0 -168
- package/src/scoring/assessments/seo/ImageCountAssessment.js +0 -112
- package/src/scoring/assessments/seo/InternalLinksAssessment.js +0 -114
- package/src/scoring/assessments/seo/IntroductionKeywordAssessment.js +0 -110
- package/src/scoring/assessments/seo/KeyphraseAssessment.js +0 -104
- package/src/scoring/assessments/seo/KeyphraseLengthAssessment.js +0 -110
- package/src/scoring/assessments/seo/KeywordDensityAssessment.js +0 -116
- package/src/scoring/assessments/seo/MetaDescriptionKeywordAssessment.js +0 -114
- package/src/scoring/assessments/seo/MetaDescriptionLengthAssessment.js +0 -112
- package/src/scoring/assessments/seo/MetaTitleKeywordAssessment.js +0 -111
- package/src/scoring/assessments/seo/NumberInMetaTitleAssessment.js +0 -107
- package/src/scoring/assessments/seo/OutboundLinksAssessment.js +0 -111
- package/src/scoring/assessments/seo/PageTitleWidthAssessment.js +0 -104
- package/src/scoring/assessments/seo/SingleH1Assessment.js +0 -118
- package/src/scoring/assessments/seo/SingleTitleAssessment.js +0 -108
- package/src/scoring/assessments/seo/SubHeadingsKeywordAssessment.js +0 -107
- package/src/scoring/assessments/seo/TextImagesAssessment.js +0 -144
- package/src/scoring/assessments/seo/TextLengthAssessment.js +0 -100
- package/src/scoring/assessments/seo/UrlKeywordAssessment.js +0 -111
- package/src/scoring/assessments/seo/UrlLengthAssessment.js +0 -103
- package/src/scoring/assessors/assessor.js +0 -269
- package/src/scoring/assessors/avadaAssessor.js +0 -67
- package/src/scoring/assessors/contentAssessor.js +0 -159
- package/src/scoring/assessors/index.js +0 -4
- package/src/scoring/assessors/seoAssessor.js +0 -57
- package/src/scoring/helpers/assessments/checkForTooLongSentences.js +0 -13
- package/src/scoring/helpers/assessments/inRange.js +0 -49
- package/src/scoring/helpers/assessments/keyphraseLengthFactor.js +0 -10
- package/src/scoring/helpers/assessments/recommendedKeywordCount.js +0 -43
- package/src/scoring/helpers/index.js +0 -74
- package/src/scoring/interpreters/index.js +0 -5
- package/src/scoring/interpreters/scoreToRating.js +0 -31
- package/src/scoring/renderers/AssessorPresenter.js +0 -360
- package/src/scoring/scoreAggregators/ReadabilityScoreAggregator.js +0 -203
- package/src/scoring/scoreAggregators/SEOScoreAggregator.js +0 -54
- package/src/scoring/scoreAggregators/ScoreAggregator.js +0 -23
- package/src/scoring/scoreAggregators/index.js +0 -3
- package/src/values/AssessmentResult.js +0 -496
- package/src/values/Mark.js +0 -271
- package/src/values/Paper.js +0 -425
- package/src/values/index.js +0 -9
- package/src/vendor/turkishStemmer.js +0 -3435
- package/tsconfig.json +0 -15
|
@@ -1,17 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
var _getSentences = _interopRequireDefault(require("../helpers/sentence/getSentences.js"));
|
|
9
|
-
var _quotes = require("../helpers/sanitize/quotes.js");
|
|
10
|
-
var _matchWordInSentence = require("../helpers/word/matchWordInSentence.js");
|
|
11
|
-
var _htmlParser = _interopRequireDefault(require("../helpers/html/htmlParser"));
|
|
12
|
-
var _lodash = require("lodash");
|
|
13
|
-
var _helpers = require("../helpers");
|
|
14
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
1
|
+
import createRegexFromDoubleArray from "../helpers/regex/createRegexFromDoubleArray.js";
|
|
2
|
+
import getSentences from "../helpers/sentence/getSentences.js";
|
|
3
|
+
import { normalizeSingle as normalizeSingleQuotes } from "../helpers/sanitize/quotes.js";
|
|
4
|
+
import { isWordInSentence as matchWordInSentence } from "../helpers/word/matchWordInSentence.js";
|
|
5
|
+
import removeHtmlBlocks from "../helpers/html/htmlParser";
|
|
6
|
+
import { flattenDeep } from "lodash";
|
|
7
|
+
import { filterShortcodesFromHTML } from "../helpers";
|
|
15
8
|
let regexFromDoubleArray = null;
|
|
16
9
|
let regexFromDoubleArrayCacheKey = "";
|
|
17
10
|
|
|
@@ -23,10 +16,10 @@ let regexFromDoubleArrayCacheKey = "";
|
|
|
23
16
|
* @returns {RegExp} The RegExp to match text with a double array.
|
|
24
17
|
*/
|
|
25
18
|
function getRegexFromDoubleArray(twoPartTransitionWords) {
|
|
26
|
-
const cacheKey =
|
|
19
|
+
const cacheKey = flattenDeep(twoPartTransitionWords).join("");
|
|
27
20
|
if (regexFromDoubleArrayCacheKey !== cacheKey || regexFromDoubleArray === null) {
|
|
28
21
|
regexFromDoubleArrayCacheKey = cacheKey;
|
|
29
|
-
regexFromDoubleArray = (
|
|
22
|
+
regexFromDoubleArray = createRegexFromDoubleArray(twoPartTransitionWords);
|
|
30
23
|
}
|
|
31
24
|
return regexFromDoubleArray;
|
|
32
25
|
}
|
|
@@ -39,7 +32,7 @@ function getRegexFromDoubleArray(twoPartTransitionWords) {
|
|
|
39
32
|
* @returns {Array} The found transitional words.
|
|
40
33
|
*/
|
|
41
34
|
const matchTwoPartTransitionWords = function (sentence, twoPartTransitionWords) {
|
|
42
|
-
sentence = (
|
|
35
|
+
sentence = normalizeSingleQuotes(sentence);
|
|
43
36
|
const twoPartTransitionWordsRegex = getRegexFromDoubleArray(twoPartTransitionWords);
|
|
44
37
|
return sentence.match(twoPartTransitionWordsRegex);
|
|
45
38
|
};
|
|
@@ -52,8 +45,8 @@ const matchTwoPartTransitionWords = function (sentence, twoPartTransitionWords)
|
|
|
52
45
|
* @returns {Array} The found transitional words.
|
|
53
46
|
*/
|
|
54
47
|
const matchTransitionWords = function (sentence, transitionWords) {
|
|
55
|
-
sentence = (
|
|
56
|
-
return transitionWords.filter(word => (
|
|
48
|
+
sentence = normalizeSingleQuotes(sentence);
|
|
49
|
+
return transitionWords.filter(word => matchWordInSentence(word, sentence));
|
|
57
50
|
};
|
|
58
51
|
|
|
59
52
|
/**
|
|
@@ -100,15 +93,15 @@ const checkSentencesForTransitionWords = function (sentences, transitionWords, t
|
|
|
100
93
|
* @returns {object} An object with the total number of sentences in the text
|
|
101
94
|
* and the total number of sentences containing one or more transition words.
|
|
102
95
|
*/
|
|
103
|
-
function
|
|
96
|
+
export default function (paper, researcher) {
|
|
104
97
|
const matchTransitionWordsHelper = researcher.getHelper("matchTransitionWordsHelper");
|
|
105
98
|
const transitionWords = researcher.getConfig("transitionWords");
|
|
106
99
|
const twoPartTransitionWords = researcher.getConfig("twoPartTransitionWords");
|
|
107
100
|
const memoizedTokenizer = researcher.getHelper("memoizedTokenizer");
|
|
108
101
|
let text = paper.getText();
|
|
109
|
-
text = (
|
|
110
|
-
text =
|
|
111
|
-
const sentences = (
|
|
102
|
+
text = removeHtmlBlocks(text);
|
|
103
|
+
text = filterShortcodesFromHTML(text, paper._attributes && paper._attributes.shortcodes);
|
|
104
|
+
const sentences = getSentences(text, memoizedTokenizer);
|
|
112
105
|
const sentenceResults = checkSentencesForTransitionWords(sentences, transitionWords, twoPartTransitionWords, matchTransitionWordsHelper);
|
|
113
106
|
return {
|
|
114
107
|
totalSentences: sentences.length,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findTransitionWords.js","names":["
|
|
1
|
+
{"version":3,"file":"findTransitionWords.js","names":["createRegexFromDoubleArray","getSentences","normalizeSingle","normalizeSingleQuotes","isWordInSentence","matchWordInSentence","removeHtmlBlocks","flattenDeep","filterShortcodesFromHTML","regexFromDoubleArray","regexFromDoubleArrayCacheKey","getRegexFromDoubleArray","twoPartTransitionWords","cacheKey","join","matchTwoPartTransitionWords","sentence","twoPartTransitionWordsRegex","match","matchTransitionWords","transitionWords","filter","word","checkSentencesForTransitionWords","sentences","matchTransitionWordsHelper","results","forEach","twoPartMatches","push","transitionWordMatches","length","paper","researcher","getHelper","getConfig","memoizedTokenizer","text","getText","_attributes","shortcodes","sentenceResults","totalSentences","transitionWordSentences"],"sources":["../../../src/languageProcessing/researches/findTransitionWords.js"],"sourcesContent":["import createRegexFromDoubleArray from \"../helpers/regex/createRegexFromDoubleArray.js\";\nimport getSentences from \"../helpers/sentence/getSentences.js\";\nimport { normalizeSingle as normalizeSingleQuotes } from \"../helpers/sanitize/quotes.js\";\nimport { isWordInSentence as matchWordInSentence } from \"../helpers/word/matchWordInSentence.js\";\nimport removeHtmlBlocks from \"../helpers/html/htmlParser\";\n\nimport { flattenDeep } from \"lodash\";\nimport { filterShortcodesFromHTML } from \"../helpers\";\n\nlet regexFromDoubleArray = null;\nlet regexFromDoubleArrayCacheKey = \"\";\n\n/**\n * Memoizes the createRegexFromDoubleArray with the twoPartTransitionWords.\n *\n * @param {Array} twoPartTransitionWords The array containing two-part transition words.\n *\n * @returns {RegExp} The RegExp to match text with a double array.\n */\nfunction getRegexFromDoubleArray( twoPartTransitionWords ) {\n\tconst cacheKey = flattenDeep( twoPartTransitionWords ).join( \"\" );\n\tif ( regexFromDoubleArrayCacheKey !== cacheKey || regexFromDoubleArray === null ) {\n\t\tregexFromDoubleArrayCacheKey = cacheKey;\n\t\tregexFromDoubleArray = createRegexFromDoubleArray( twoPartTransitionWords );\n\t}\n\treturn regexFromDoubleArray;\n}\n\n/**\n * Matches the sentence against two part transition words.\n *\n * @param {string} sentence The sentence to match against.\n * @param {Array} twoPartTransitionWords The array containing two-part transition words.\n * @returns {Array} The found transitional words.\n */\nconst matchTwoPartTransitionWords = function( sentence, twoPartTransitionWords ) {\n\tsentence = normalizeSingleQuotes( sentence );\n\tconst twoPartTransitionWordsRegex = getRegexFromDoubleArray( twoPartTransitionWords );\n\treturn sentence.match( twoPartTransitionWordsRegex );\n};\n\n/**\n * Matches the sentence against transition words.\n *\n * @param {string} sentence The sentence to match against.\n * @param {Array} transitionWords The array containing transition words.\n * @returns {Array} The found transitional words.\n */\nconst matchTransitionWords = function( sentence, transitionWords ) {\n\tsentence = normalizeSingleQuotes( sentence );\n\treturn transitionWords.filter( word => matchWordInSentence( word, sentence ) );\n};\n\n/**\n * Checks the passed sentences to see if they contain transition words.\n *\n * @param {Array} sentences The sentences to match against.\n * @param {Array} transitionWords The array containing transition words.\n * @param {Array} twoPartTransitionWords The array containing two part transition words.\n * @param {function} matchTransitionWordsHelper The language-specific helper function to match transition words in a sentence.\n *\n * @returns {Array} Array of sentence objects containing the complete sentence and the transition words.\n */\nconst checkSentencesForTransitionWords = function( sentences, transitionWords, twoPartTransitionWords, matchTransitionWordsHelper ) {\n\tconst results = [];\n\n\tsentences.forEach( sentence => {\n\t\tif ( twoPartTransitionWords ) {\n\t\t\tconst twoPartMatches = matchTwoPartTransitionWords( sentence, twoPartTransitionWords );\n\n\t\t\tif ( twoPartMatches !== null ) {\n\t\t\t\tresults.push( {\n\t\t\t\t\tsentence: sentence,\n\t\t\t\t\ttransitionWords: twoPartMatches,\n\t\t\t\t} );\n\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tconst transitionWordMatches = matchTransitionWordsHelper\n\t\t\t? matchTransitionWordsHelper( sentence, transitionWords )\n\t\t\t: matchTransitionWords( sentence, transitionWords );\n\n\t\tif ( transitionWordMatches.length !== 0 ) {\n\t\t\tresults.push( {\n\t\t\t\tsentence: sentence,\n\t\t\t\ttransitionWords: transitionWordMatches,\n\t\t\t} );\n\t\t}\n\t} );\n\n\treturn results;\n};\n\n/**\n * Checks how many sentences from a text contain at least one transition word or two-part transition word\n * that are defined in the transition words config and two part transition words config.\n *\n * @param {Paper} paper The Paper object to get text from.\n * @param {Researcher} researcher The researcher.\n *\n * @returns {object} An object with the total number of sentences in the text\n * and the total number of sentences containing one or more transition words.\n */\nexport default function( paper, researcher ) {\n\tconst matchTransitionWordsHelper = researcher.getHelper( \"matchTransitionWordsHelper\" );\n\tconst transitionWords = researcher.getConfig( \"transitionWords\" );\n\tconst twoPartTransitionWords = researcher.getConfig( \"twoPartTransitionWords\" );\n\tconst memoizedTokenizer = researcher.getHelper( \"memoizedTokenizer\" );\n\n\tlet text = paper.getText();\n\ttext = removeHtmlBlocks( text );\n\ttext = filterShortcodesFromHTML( text, paper._attributes && paper._attributes.shortcodes );\n\tconst sentences = getSentences( text, memoizedTokenizer );\n\tconst sentenceResults = checkSentencesForTransitionWords( sentences, transitionWords, twoPartTransitionWords, matchTransitionWordsHelper );\n\n\treturn {\n\t\ttotalSentences: sentences.length,\n\t\tsentenceResults: sentenceResults,\n\t\ttransitionWordSentences: sentenceResults.length,\n\t};\n}\n"],"mappings":"AAAA,OAAOA,0BAA0B;AACjC,OAAOC,YAAY;AACnB,SAASC,eAAe,IAAIC,qBAAqB;AACjD,SAASC,gBAAgB,IAAIC,mBAAmB;AAChD,OAAOC,gBAAgB;AAEvB,SAASC,WAAW,QAAQ,QAAQ;AACpC,SAASC,wBAAwB;AAEjC,IAAIC,oBAAoB,GAAG,IAAI;AAC/B,IAAIC,4BAA4B,GAAG,EAAE;;AAErC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,uBAAuBA,CAAEC,sBAAsB,EAAG;EAC1D,MAAMC,QAAQ,GAAGN,WAAW,CAAEK,sBAAuB,CAAC,CAACE,IAAI,CAAE,EAAG,CAAC;EACjE,IAAKJ,4BAA4B,KAAKG,QAAQ,IAAIJ,oBAAoB,KAAK,IAAI,EAAG;IACjFC,4BAA4B,GAAGG,QAAQ;IACvCJ,oBAAoB,GAAGT,0BAA0B,CAAEY,sBAAuB,CAAC;EAC5E;EACA,OAAOH,oBAAoB;AAC5B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMM,2BAA2B,GAAG,SAAAA,CAAUC,QAAQ,EAAEJ,sBAAsB,EAAG;EAChFI,QAAQ,GAAGb,qBAAqB,CAAEa,QAAS,CAAC;EAC5C,MAAMC,2BAA2B,GAAGN,uBAAuB,CAAEC,sBAAuB,CAAC;EACrF,OAAOI,QAAQ,CAACE,KAAK,CAAED,2BAA4B,CAAC;AACrD,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAME,oBAAoB,GAAG,SAAAA,CAAUH,QAAQ,EAAEI,eAAe,EAAG;EAClEJ,QAAQ,GAAGb,qBAAqB,CAAEa,QAAS,CAAC;EAC5C,OAAOI,eAAe,CAACC,MAAM,CAAEC,IAAI,IAAIjB,mBAAmB,CAAEiB,IAAI,EAAEN,QAAS,CAAE,CAAC;AAC/E,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMO,gCAAgC,GAAG,SAAAA,CAAUC,SAAS,EAAEJ,eAAe,EAAER,sBAAsB,EAAEa,0BAA0B,EAAG;EACnI,MAAMC,OAAO,GAAG,EAAE;EAElBF,SAAS,CAACG,OAAO,CAAEX,QAAQ,IAAI;IAC9B,IAAKJ,sBAAsB,EAAG;MAC7B,MAAMgB,cAAc,GAAGb,2BAA2B,CAAEC,QAAQ,EAAEJ,sBAAuB,CAAC;MAEtF,IAAKgB,cAAc,KAAK,IAAI,EAAG;QAC9BF,OAAO,CAACG,IAAI,CAAE;UACbb,QAAQ,EAAEA,QAAQ;UAClBI,eAAe,EAAEQ;QAClB,CAAE,CAAC;QAEH;MACD;IACD;IAEA,MAAME,qBAAqB,GAAGL,0BAA0B,GACrDA,0BAA0B,CAAET,QAAQ,EAAEI,eAAgB,CAAC,GACvDD,oBAAoB,CAAEH,QAAQ,EAAEI,eAAgB,CAAC;IAEpD,IAAKU,qBAAqB,CAACC,MAAM,KAAK,CAAC,EAAG;MACzCL,OAAO,CAACG,IAAI,CAAE;QACbb,QAAQ,EAAEA,QAAQ;QAClBI,eAAe,EAAEU;MAClB,CAAE,CAAC;IACJ;EACD,CAAE,CAAC;EAEH,OAAOJ,OAAO;AACf,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,UAAUM,KAAK,EAAEC,UAAU,EAAG;EAC5C,MAAMR,0BAA0B,GAAGQ,UAAU,CAACC,SAAS,CAAE,4BAA6B,CAAC;EACvF,MAAMd,eAAe,GAAGa,UAAU,CAACE,SAAS,CAAE,iBAAkB,CAAC;EACjE,MAAMvB,sBAAsB,GAAGqB,UAAU,CAACE,SAAS,CAAE,wBAAyB,CAAC;EAC/E,MAAMC,iBAAiB,GAAGH,UAAU,CAACC,SAAS,CAAE,mBAAoB,CAAC;EAErE,IAAIG,IAAI,GAAGL,KAAK,CAACM,OAAO,CAAC,CAAC;EAC1BD,IAAI,GAAG/B,gBAAgB,CAAE+B,IAAK,CAAC;EAC/BA,IAAI,GAAG7B,wBAAwB,CAAE6B,IAAI,EAAEL,KAAK,CAACO,WAAW,IAAIP,KAAK,CAACO,WAAW,CAACC,UAAW,CAAC;EAC1F,MAAMhB,SAAS,GAAGvB,YAAY,CAAEoC,IAAI,EAAED,iBAAkB,CAAC;EACzD,MAAMK,eAAe,GAAGlB,gCAAgC,CAAEC,SAAS,EAAEJ,eAAe,EAAER,sBAAsB,EAAEa,0BAA2B,CAAC;EAE1I,OAAO;IACNiB,cAAc,EAAElB,SAAS,CAACO,MAAM;IAChCU,eAAe,EAAEA,eAAe;IAChCE,uBAAuB,EAAEF,eAAe,CAACV;EAC1C,CAAC;AACF","ignoreList":[]}
|
|
@@ -1,14 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
import { filter, includes, isEmpty } from "lodash";
|
|
2
|
+
import getWords from "../helpers/word/getWords";
|
|
3
|
+
import processExactMatchRequest from "../helpers/match/processExactMatchRequest";
|
|
4
|
+
import { WORD_BOUNDARY_WITH_HYPHEN } from "../../config/wordBoundariesWithoutPunctuation";
|
|
2
5
|
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = _default;
|
|
7
|
-
var _lodash = require("lodash");
|
|
8
|
-
var _getWords = _interopRequireDefault(require("../helpers/word/getWords"));
|
|
9
|
-
var _processExactMatchRequest = _interopRequireDefault(require("../helpers/match/processExactMatchRequest"));
|
|
10
|
-
var _wordBoundariesWithoutPunctuation = require("../../config/wordBoundariesWithoutPunctuation");
|
|
11
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
6
|
/**
|
|
13
7
|
* Checks if the keyphrase contains of function words only.
|
|
14
8
|
*
|
|
@@ -17,7 +11,7 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
|
|
|
17
11
|
*
|
|
18
12
|
* @returns {boolean} Whether the keyphrase contains of content words only.
|
|
19
13
|
*/
|
|
20
|
-
function
|
|
14
|
+
export default function (paper, researcher) {
|
|
21
15
|
const functionWords = researcher.getConfig("functionWords");
|
|
22
16
|
|
|
23
17
|
// A helper to get words from the keyphrase for languages that don't use the default way.
|
|
@@ -25,7 +19,7 @@ function _default(paper, researcher) {
|
|
|
25
19
|
const keyphrase = paper.getKeyword();
|
|
26
20
|
|
|
27
21
|
// Return false if there are double quotes around the keyphrase.
|
|
28
|
-
if ((
|
|
22
|
+
if (processExactMatchRequest(keyphrase).exactMatchRequested) {
|
|
29
23
|
return false;
|
|
30
24
|
}
|
|
31
25
|
|
|
@@ -39,10 +33,10 @@ function _default(paper, researcher) {
|
|
|
39
33
|
* As a downside, single function words containing hyphens (e.g. 'vis-à-vis') won't be automatically matched, but we
|
|
40
34
|
* are solving this by adding each word from such function words as separate entries in the function words lists.
|
|
41
35
|
*/
|
|
42
|
-
let keyphraseWords = getWordsCustomHelper ? getWordsCustomHelper(keyphrase) : (
|
|
43
|
-
keyphraseWords =
|
|
44
|
-
return !
|
|
36
|
+
let keyphraseWords = getWordsCustomHelper ? getWordsCustomHelper(keyphrase) : getWords(keyphrase, WORD_BOUNDARY_WITH_HYPHEN);
|
|
37
|
+
keyphraseWords = filter(keyphraseWords, function (word) {
|
|
38
|
+
return !includes(functionWords, word.trim().toLocaleLowerCase());
|
|
45
39
|
});
|
|
46
|
-
return
|
|
40
|
+
return isEmpty(keyphraseWords);
|
|
47
41
|
}
|
|
48
42
|
//# sourceMappingURL=functionWordsInKeyphrase.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"functionWordsInKeyphrase.js","names":["
|
|
1
|
+
{"version":3,"file":"functionWordsInKeyphrase.js","names":["filter","includes","isEmpty","getWords","processExactMatchRequest","WORD_BOUNDARY_WITH_HYPHEN","paper","researcher","functionWords","getConfig","getWordsCustomHelper","getHelper","keyphrase","getKeyword","exactMatchRequested","keyphraseWords","word","trim","toLocaleLowerCase"],"sources":["../../../src/languageProcessing/researches/functionWordsInKeyphrase.js"],"sourcesContent":["import { filter, includes, isEmpty } from \"lodash\";\nimport getWords from \"../helpers/word/getWords\";\nimport processExactMatchRequest from \"../helpers/match/processExactMatchRequest\";\nimport { WORD_BOUNDARY_WITH_HYPHEN } from \"../../config/wordBoundariesWithoutPunctuation\";\n\n/**\n * Checks if the keyphrase contains of function words only.\n *\n * @param {object} paper The paper containing the keyword.\n * @param {Researcher} researcher The researcher.\n *\n * @returns {boolean} Whether the keyphrase contains of content words only.\n */\nexport default function( paper, researcher ) {\n\tconst functionWords = researcher.getConfig( \"functionWords\" );\n\n\t// A helper to get words from the keyphrase for languages that don't use the default way.\n\tconst getWordsCustomHelper = researcher.getHelper( \"getWordsCustomHelper\" );\n\tconst keyphrase = paper.getKeyword();\n\n\t// Return false if there are double quotes around the keyphrase.\n\tif ( processExactMatchRequest( keyphrase ).exactMatchRequested ) {\n\t\treturn false;\n\t}\n\n\t/*\n * We use a word boundary regex that includes whitespaces, en-dashes, and hyphens for all languages.\n * This means that we also consider keyphrases that consist of function words separated by hyphens (e.g. 'two-year-old')\n * as containing only function words. Since many hyphenated phrases can also be written without hyphens, this way the\n * behavior for hyphenated phrases matches the behavior for unhyphenated phrases.\n * In Indonesian we normally don't want to treat hyphens as word boundaries, but in this case it makes sense because\n * in Indonesian you can also have function words seperated by hyphens (e.g. 'dua-lima').\n * As a downside, single function words containing hyphens (e.g. 'vis-à-vis') won't be automatically matched, but we\n * are solving this by adding each word from such function words as separate entries in the function words lists.\n */\n\tlet keyphraseWords = getWordsCustomHelper ? getWordsCustomHelper( keyphrase )\n\t\t: getWords( keyphrase, WORD_BOUNDARY_WITH_HYPHEN );\n\n\tkeyphraseWords = filter( keyphraseWords, function( word ) {\n\t\treturn ( ! includes( functionWords, word.trim().toLocaleLowerCase() ) );\n\t} );\n\n\treturn isEmpty( keyphraseWords );\n}\n"],"mappings":"AAAA,SAASA,MAAM,EAAEC,QAAQ,EAAEC,OAAO,QAAQ,QAAQ;AAClD,OAAOC,QAAQ;AACf,OAAOC,wBAAwB;AAC/B,SAASC,yBAAyB;;AAElC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,UAAUC,KAAK,EAAEC,UAAU,EAAG;EAC5C,MAAMC,aAAa,GAAGD,UAAU,CAACE,SAAS,CAAE,eAAgB,CAAC;;EAE7D;EACA,MAAMC,oBAAoB,GAAGH,UAAU,CAACI,SAAS,CAAE,sBAAuB,CAAC;EAC3E,MAAMC,SAAS,GAAGN,KAAK,CAACO,UAAU,CAAC,CAAC;;EAEpC;EACA,IAAKT,wBAAwB,CAAEQ,SAAU,CAAC,CAACE,mBAAmB,EAAG;IAChE,OAAO,KAAK;EACb;;EAEA;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACC,IAAIC,cAAc,GAAGL,oBAAoB,GAAGA,oBAAoB,CAAEE,SAAU,CAAC,GAC1ET,QAAQ,CAAES,SAAS,EAAEP,yBAA0B,CAAC;EAEnDU,cAAc,GAAGf,MAAM,CAAEe,cAAc,EAAE,UAAUC,IAAI,EAAG;IACzD,OAAS,CAAEf,QAAQ,CAAEO,aAAa,EAAEQ,IAAI,CAACC,IAAI,CAAC,CAAC,CAACC,iBAAiB,CAAC,CAAE,CAAC;EACtE,CAAE,CAAC;EAEH,OAAOhB,OAAO,CAAEa,cAAe,CAAC;AACjC","ignoreList":[]}
|
|
@@ -1,19 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
var _getWords = _interopRequireDefault(require("../helpers/word/getWords"));
|
|
11
|
-
var _matchTextWithArray = _interopRequireDefault(require("../helpers/match/matchTextWithArray"));
|
|
12
|
-
var _parseSynonyms = _interopRequireDefault(require("../helpers/sanitize/parseSynonyms"));
|
|
13
|
-
var _processExactMatchRequest = _interopRequireDefault(require("../helpers/match/processExactMatchRequest"));
|
|
14
|
-
var _url = _interopRequireDefault(require("../helpers/url/url.js"));
|
|
15
|
-
var _wordBoundariesWithoutPunctuation = require("../../config/wordBoundariesWithoutPunctuation");
|
|
16
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
1
|
+
import { flatten, uniq } from "lodash";
|
|
2
|
+
import filterWordsFromArray from "../helpers/word/filterWordsFromArray";
|
|
3
|
+
import { findTopicFormsInString } from "../helpers/match/findKeywordFormsInString";
|
|
4
|
+
import getWords from "../helpers/word/getWords";
|
|
5
|
+
import matchTextWithArray from "../helpers/match/matchTextWithArray";
|
|
6
|
+
import parseSynonyms from "../helpers/sanitize/parseSynonyms";
|
|
7
|
+
import processExactMatchRequest from "../helpers/match/processExactMatchRequest";
|
|
8
|
+
import urlHelper from "../helpers/url/url.js";
|
|
9
|
+
import { WORD_BOUNDARY_WITH_HYPHEN, WORD_BOUNDARY_WITHOUT_HYPHEN } from "../../config/wordBoundariesWithoutPunctuation";
|
|
17
10
|
let functionWords = [];
|
|
18
11
|
|
|
19
12
|
/**
|
|
@@ -26,7 +19,7 @@ let functionWords = [];
|
|
|
26
19
|
* @returns {boolean} Whether the anchor's link is a relative fragment or the same as the site url/domain.
|
|
27
20
|
*/
|
|
28
21
|
function isLinkingToSelf(anchorLink, siteUrlOrDomain) {
|
|
29
|
-
return Boolean(
|
|
22
|
+
return Boolean(urlHelper.areEqual(anchorLink, siteUrlOrDomain) || urlHelper.isRelativeFragmentURL(anchorLink));
|
|
30
23
|
}
|
|
31
24
|
|
|
32
25
|
/**
|
|
@@ -60,7 +53,7 @@ function getAnchorsContainingTopic(anchors, topicForms, locale, matchWordCustomH
|
|
|
60
53
|
const anchorsContainingTopic = anchors.map(function (anchor) {
|
|
61
54
|
// Only retrieve the anchor's text. This is because we only use the anchor text for the following check.
|
|
62
55
|
const anchorText = anchor.innerText();
|
|
63
|
-
return
|
|
56
|
+
return findTopicFormsInString(topicForms, anchorText, true, locale, matchWordCustomHelper).percentWordMatches === 100;
|
|
64
57
|
});
|
|
65
58
|
return anchors.filter((anchor, index) => anchorsContainingTopic[index]);
|
|
66
59
|
}
|
|
@@ -83,9 +76,9 @@ function getAnchorsWithSameTextAsTopic(anchors, topicForms, locale, customHelper
|
|
|
83
76
|
const getWordsCustomHelper = customHelpers.getWordsCustomHelper;
|
|
84
77
|
|
|
85
78
|
// Prepare keyphrase and synonym forms for comparison with anchors.
|
|
86
|
-
const keyphraseAndSynonymsWords = [
|
|
79
|
+
const keyphraseAndSynonymsWords = [flatten(topicForms.keyphraseForms)];
|
|
87
80
|
const synonymsForms = topicForms.synonymsForms;
|
|
88
|
-
synonymsForms.forEach(form => keyphraseAndSynonymsWords.push(
|
|
81
|
+
synonymsForms.forEach(form => keyphraseAndSynonymsWords.push(flatten(form)));
|
|
89
82
|
|
|
90
83
|
// The variable that will save all the anchors with text that has the same content words as the keyphrase/synonyms.
|
|
91
84
|
const anchorsContainedInTopic = [];
|
|
@@ -103,18 +96,18 @@ function getAnchorsWithSameTextAsTopic(anchors, topicForms, locale, customHelper
|
|
|
103
96
|
*/
|
|
104
97
|
let anchorWords;
|
|
105
98
|
if (getWordsCustomHelper) {
|
|
106
|
-
anchorWords =
|
|
99
|
+
anchorWords = uniq(getWordsCustomHelper(currentAnchorText));
|
|
107
100
|
} else if (areHyphensWordBoundaries) {
|
|
108
|
-
anchorWords =
|
|
101
|
+
anchorWords = uniq(getWords(currentAnchorText, WORD_BOUNDARY_WITH_HYPHEN));
|
|
109
102
|
} else {
|
|
110
|
-
anchorWords =
|
|
103
|
+
anchorWords = uniq(getWords(currentAnchorText, WORD_BOUNDARY_WITHOUT_HYPHEN));
|
|
111
104
|
}
|
|
112
105
|
|
|
113
106
|
/*
|
|
114
107
|
* Filter function words out of the anchor text.
|
|
115
108
|
* If the anchor text contains only function words, we keep them.
|
|
116
109
|
*/
|
|
117
|
-
const filteredAnchorWords = (
|
|
110
|
+
const filteredAnchorWords = filterWordsFromArray(anchorWords, functionWords);
|
|
118
111
|
if (filteredAnchorWords.length > 0) {
|
|
119
112
|
anchorWords = filteredAnchorWords;
|
|
120
113
|
}
|
|
@@ -131,7 +124,7 @@ function getAnchorsWithSameTextAsTopic(anchors, topicForms, locale, customHelper
|
|
|
131
124
|
// Check if every word in the anchor text is also present in the keyphrase/synonym.
|
|
132
125
|
for (let i = 0; i < keyphraseAndSynonymsWords.length; i++) {
|
|
133
126
|
const topicForm = keyphraseAndSynonymsWords[i];
|
|
134
|
-
if (anchorWords.every(anchorWord => (
|
|
127
|
+
if (anchorWords.every(anchorWord => matchTextWithArray(anchorWord, topicForm, locale, matchWordCustomHelper).count > 0)) {
|
|
135
128
|
anchorsContainedInTopic.push(true);
|
|
136
129
|
break;
|
|
137
130
|
}
|
|
@@ -149,7 +142,7 @@ function getAnchorsWithSameTextAsTopic(anchors, topicForms, locale, customHelper
|
|
|
149
142
|
*
|
|
150
143
|
* @returns {Object} The amount of anchor texts whose content words are the same as the keyphrase or synonyms' content words.
|
|
151
144
|
*/
|
|
152
|
-
function
|
|
145
|
+
export default function (paper, researcher) {
|
|
153
146
|
functionWords = researcher.getConfig("functionWords");
|
|
154
147
|
const areHyphensWordBoundaries = researcher.getConfig("areHyphensWordBoundaries");
|
|
155
148
|
const result = {
|
|
@@ -176,7 +169,7 @@ function _default(paper, researcher) {
|
|
|
176
169
|
* When the keyphrase is set, also retrieve the synonyms and save them in "topics" array.
|
|
177
170
|
* Eventually, the term topics here refers to either keyphrase or synonyms.
|
|
178
171
|
*/
|
|
179
|
-
const originalTopics = (
|
|
172
|
+
const originalTopics = parseSynonyms(paper.getSynonyms());
|
|
180
173
|
originalTopics.push(keyphrase);
|
|
181
174
|
|
|
182
175
|
// Retrieve the anchors.
|
|
@@ -211,7 +204,7 @@ function _default(paper, researcher) {
|
|
|
211
204
|
|
|
212
205
|
// STEP 5.
|
|
213
206
|
// Check if exact match is requested for every topic (keyphrase or synonym).
|
|
214
|
-
const isExactMatchRequested = originalTopics.map(originalTopic => (
|
|
207
|
+
const isExactMatchRequested = originalTopics.map(originalTopic => processExactMatchRequest(originalTopic));
|
|
215
208
|
// Get the anchors with text that has the same content words as the keyphrase/synonyms.
|
|
216
209
|
anchors = getAnchorsWithSameTextAsTopic(anchors, topicForms, locale, customHelpers, isExactMatchRequested, areHyphensWordBoundaries);
|
|
217
210
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getAnchorsWithKeyphrase.js","names":["_lodash","require","_filterWordsFromArray","_interopRequireDefault","_findKeywordFormsInString","_getWords","_matchTextWithArray","_parseSynonyms","_processExactMatchRequest","_url","_wordBoundariesWithoutPunctuation","e","__esModule","default","functionWords","isLinkingToSelf","anchorLink","siteUrlOrDomain","Boolean","urlHelper","areEqual","isRelativeFragmentURL","getAnchorsLinkingToSelf","anchors","anchorsLinkingToSelf","map","anchor","attributes","href","filter","index","getAnchorsContainingTopic","topicForms","locale","matchWordCustomHelper","anchorsContainingTopic","anchorText","innerText","findTopicFormsInString","percentWordMatches","getAnchorsWithSameTextAsTopic","customHelpers","exactMatchRequest","areHyphensWordBoundaries","getWordsCustomHelper","keyphraseAndSynonymsWords","flatten","keyphraseForms","synonymsForms","forEach","form","push","anchorsContainedInTopic","currentAnchor","currentAnchorText","anchorWords","uniq","getWords","WORD_BOUNDARY_WITH_HYPHEN","WORD_BOUNDARY_WITHOUT_HYPHEN","filteredAnchorWords","filterWordsFromArray","length","request","exactMatchRequested","every","anchorWord","keyphrase","includes","i","topicForm","matchTextWithArray","count","_default","paper","researcher","getConfig","result","anchorsWithKeyphrase","anchorsWithKeyphraseCount","getText","getKeyword","originalTopics","parseSynonyms","getSynonyms","getTree","findAll","treeNode","name","getPermalink","getLocale","getResearch","getHelper","isExactMatchRequested","originalTopic","processExactMatchRequest"],"sources":["../../../src/languageProcessing/researches/getAnchorsWithKeyphrase.js"],"sourcesContent":["import { flatten, uniq } from \"lodash\";\nimport filterWordsFromArray from \"../helpers/word/filterWordsFromArray\";\nimport { findTopicFormsInString } from \"../helpers/match/findKeywordFormsInString\";\nimport getWords from \"../helpers/word/getWords\";\nimport matchTextWithArray from \"../helpers/match/matchTextWithArray\";\nimport parseSynonyms from \"../helpers/sanitize/parseSynonyms\";\nimport processExactMatchRequest from \"../helpers/match/processExactMatchRequest\";\nimport urlHelper from \"../helpers/url/url.js\";\nimport { WORD_BOUNDARY_WITH_HYPHEN, WORD_BOUNDARY_WITHOUT_HYPHEN } from \"../../config/wordBoundariesWithoutPunctuation\";\n\nlet functionWords = [];\n\n/**\n * Checks whether the anchor's link is a relative fragment or the same as the site url/domain.\n * Relative fragment links always point to the page itself.\n *\n * @param {String} anchorLink The link anchor.\n * @param {String} siteUrlOrDomain The site URL or domain of the paper.\n *\n * @returns {boolean} Whether the anchor's link is a relative fragment or the same as the site url/domain.\n */\nfunction isLinkingToSelf( anchorLink, siteUrlOrDomain ) {\n\treturn Boolean( urlHelper.areEqual( anchorLink, siteUrlOrDomain ) || urlHelper.isRelativeFragmentURL( anchorLink ) );\n}\n\n/**\n * Gets the anchors whose url is not linking at the current site url/domain.\n *\n * @param {Array} anchors An array with all anchors from the paper.\n * @param {String} siteUrlOrDomain The site URL or domain of the paper.\n *\n * @returns {Array} The array of all anchors whose url is not linking at the current site url/domain.\n */\nfunction getAnchorsLinkingToSelf( anchors, siteUrlOrDomain ) {\n\tconst anchorsLinkingToSelf = anchors.map( function( anchor ) {\n\t\tconst anchorLink = anchor.attributes.href;\n\t\t// Return false if there is no href attribute.\n\t\treturn anchorLink ? isLinkingToSelf( anchorLink, siteUrlOrDomain ) : false;\n\t} );\n\n\treturn anchors.filter( ( anchor, index ) => ! anchorsLinkingToSelf[ index ] );\n}\n\n/**\n * Gets the anchors with text that contains all content words of the topic (i.e. keyphrase or synonyms).\n *\n * @param {Array} anchors An array with all anchors from the paper\n * @param {Object} topicForms The object with topicForms. It contains all forms of the keyphrase and synonyms.\n * @param {String} locale The locale of the paper.\n * @param {Function} matchWordCustomHelper The helper function to match word in text.\n *\n * @returns {String[]} The array of all anchors with text that contains all content words of the keyphrase or synonyms.\n */\nfunction getAnchorsContainingTopic( anchors, topicForms, locale, matchWordCustomHelper ) {\n\tconst anchorsContainingTopic = anchors.map( function( anchor ) {\n\t\t// Only retrieve the anchor's text. This is because we only use the anchor text for the following check.\n\t\tconst anchorText = anchor.innerText();\n\t\treturn findTopicFormsInString( topicForms, anchorText, true, locale, matchWordCustomHelper ).percentWordMatches === 100;\n\t} );\n\n\treturn anchors.filter( ( anchor, index ) => anchorsContainingTopic[ index ] );\n}\n\n/**\n * Gets the anchors with text that has the same content words as the keyphrase or synonyms.\n *\n * @param {Array} anchors \t\tAn array with all anchors from the paper.\n * @param {Object} topicForms \t\tThe object with topicForms. It contains all forms of the keyphrase and synonyms.\n * @param {string} locale \t\tThe locale of the paper.\n * @param {Object} customHelpers \t\tAn object containing custom helpers.\n * @param {Object[]} exactMatchRequest \t\tAn array of objects containing the keyphrase and information on whether\n * \t\t\t\t\t\t\t\t\t\t\t\t\tthe exact match has been requested.\n * @param {boolean}\t \tareHyphensWordBoundaries\tWhether hyphens should be treated as word boundaries.\n *\n * @returns {Array} The array of all anchors with text that has the same content words as the keyphrase/synonyms.\n */\nfunction getAnchorsWithSameTextAsTopic( anchors, topicForms, locale, customHelpers, exactMatchRequest, areHyphensWordBoundaries ) {\n\tconst matchWordCustomHelper = customHelpers.matchWordCustomHelper;\n\tconst getWordsCustomHelper = customHelpers.getWordsCustomHelper;\n\n\t// Prepare keyphrase and synonym forms for comparison with anchors.\n\tconst keyphraseAndSynonymsWords = [ flatten( topicForms.keyphraseForms ) ];\n\tconst synonymsForms = topicForms.synonymsForms;\n\tsynonymsForms.forEach( form => keyphraseAndSynonymsWords.push( flatten( form ) ) );\n\n\t// The variable that will save all the anchors with text that has the same content words as the keyphrase/synonyms.\n\tconst anchorsContainedInTopic = [];\n\n\tanchors.forEach( function( currentAnchor ) {\n\t\tconst currentAnchorText = currentAnchor.innerText();\n\n\t\t/*\n * For keyphrase matching, we want to split words on hyphens and en-dashes, except for languages where hyphens shouldn't\n * be treated as word boundaries. Currently, the latter only applies to Indonesian, where hyphens are used to create plural forms of nouns,\n * such as \"buku-buku\" being a plural form of \"buku\". We want to treat forms like \"buku-buku\" as one word, so we shouldn't\n * split words on hyphens in Indonesian.\n * For languages where hyphens are treated as word boundaries we pass a custom word boundary regex string to the getWords helper\n * that includes whitespaces, hyphens (u002d), and en-dashes (u2013). Otherwise, we pass a word boundary regex that only includes\n * whitespaces and en-dashes.\n */\n\t\tlet anchorWords;\n\t\tif ( getWordsCustomHelper ) {\n\t\t\tanchorWords = uniq( getWordsCustomHelper( currentAnchorText ) );\n\t\t} else if ( areHyphensWordBoundaries ) {\n\t\t\tanchorWords = uniq( getWords( currentAnchorText, WORD_BOUNDARY_WITH_HYPHEN ) );\n\t\t} else {\n\t\t\tanchorWords = uniq( getWords( currentAnchorText, WORD_BOUNDARY_WITHOUT_HYPHEN ) );\n\t\t}\n\n\t\t/*\n\t\t * Filter function words out of the anchor text.\n\t\t * If the anchor text contains only function words, we keep them.\n\t\t */\n\t\tconst filteredAnchorWords = filterWordsFromArray( anchorWords, functionWords );\n\t\tif ( filteredAnchorWords.length > 0 ) {\n\t\t\tanchorWords = filteredAnchorWords;\n\t\t}\n\n\t\texactMatchRequest.forEach( request => {\n\t\t\t/*\n\t\t\t * Check a) if the exact match is requested for the keyphrase, and\n\t\t\t * b) if every content word in the anchor text is included in the keyphrase or synonym.\n\t\t\t */\n\t\t\tif ( request.exactMatchRequested &&\n\t\t\t\tanchorWords.every( anchorWord => request.keyphrase.includes( anchorWord ) ) ) {\n\t\t\t\tanchorsContainedInTopic.push( true );\n\t\t\t}\n\t\t} );\n\n\t\t// Check if every word in the anchor text is also present in the keyphrase/synonym.\n\t\tfor ( let i = 0; i < keyphraseAndSynonymsWords.length; i++ ) {\n\t\t\tconst topicForm = keyphraseAndSynonymsWords[ i ];\n\n\t\t\tif ( anchorWords.every( anchorWord => matchTextWithArray( anchorWord, topicForm, locale, matchWordCustomHelper ).count > 0 ) ) {\n\t\t\t\tanchorsContainedInTopic.push( true );\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t} );\n\n\treturn anchors.filter( ( anchor, index ) => anchorsContainedInTopic[ index ] );\n}\n\n/**\n * Checks whether the content words of the anchor text are the same as the content words of the keyphrase or synonym.\n * Also includes different word forms if the morphology is available.\n *\n * @param {Paper} paper The paper to research.\n * @param {Researcher} researcher The researcher to use.\n *\n * @returns {Object} The amount of anchor texts whose content words are the same as the keyphrase or synonyms' content words.\n */\nexport default function( paper, researcher ) {\n\tfunctionWords = researcher.getConfig( \"functionWords\" );\n\n\tconst areHyphensWordBoundaries = researcher.getConfig( \"areHyphensWordBoundaries\" );\n\n\tconst result = {\n\t\tanchorsWithKeyphrase: [],\n\t\tanchorsWithKeyphraseCount: 0,\n\t};\n\t// STEP 1.\n\t// If the paper's text is empty, return empty result.\n\tif ( paper.getText() === \"\" ) {\n\t\treturn result;\n\t}\n\n\t// STEP 2.\n\tconst keyphrase = paper.getKeyword();\n\t/*\n\t * If no keyphrase is set, return empty result.\n\t * This is a conscious decision where we won't assess the paper if the keyphrase is not set.\n\t * This includes a case where only the synonym is set but not the keyphrase.\n\t */\n\tif ( keyphrase === \"\" ) {\n\t\treturn result;\n\t}\n\t/*\n\t * When the keyphrase is set, also retrieve the synonyms and save them in \"topics\" array.\n\t * Eventually, the term topics here refers to either keyphrase or synonyms.\n\t */\n\tconst originalTopics = parseSynonyms( paper.getSynonyms() );\n\toriginalTopics.push( keyphrase );\n\n\t// Retrieve the anchors.\n\tlet anchors = paper.getTree().findAll( treeNode => treeNode.name === \"a\" );\n\t/*\n\t * We get the site's URL (e.g., https://yoast.com) or domain (e.g., yoast.com) from the paper.\n\t * In case of WordPress, the variable is a URL. In case of Shopify, it is a domain.\n\t */\n\tconst siteUrlOrDomain = paper.getPermalink();\n\n\t// STEP 3.\n\t// Get the anchors with urls that are not linking to the current site url/domain.\n\tanchors = getAnchorsLinkingToSelf( anchors, siteUrlOrDomain );\n\t// If all anchor urls are linking to the current site url/domain, return empty result.\n\tif ( anchors.length === 0 ) {\n\t\treturn result;\n\t}\n\n\tconst locale = paper.getLocale();\n\tconst topicForms = researcher.getResearch( \"morphology\" );\n\tconst customHelpers = {\n\t\tmatchWordCustomHelper: researcher.getHelper( \"matchWordCustomHelper\" ),\n\t\tgetWordsCustomHelper: researcher.getHelper( \"getWordsCustomHelper\" ),\n\t};\n\n\t// STEP 4.\n\t// Get the anchors with text that contains the keyphrase/synonyms' content words.\n\tanchors = getAnchorsContainingTopic( anchors, topicForms, locale, customHelpers.matchWordCustomHelper );\n\t// If all anchor texts do not contain the keyphrase/synonyms' content words, return empty result.\n\tif ( anchors.length === 0 ) {\n\t\treturn result;\n\t}\n\n\t// STEP 5.\n\t// Check if exact match is requested for every topic (keyphrase or synonym).\n\tconst isExactMatchRequested = originalTopics.map( originalTopic => processExactMatchRequest( originalTopic ) );\n\t// Get the anchors with text that has the same content words as the keyphrase/synonyms.\n\tanchors = getAnchorsWithSameTextAsTopic( anchors, topicForms, locale, customHelpers, isExactMatchRequested, areHyphensWordBoundaries );\n\n\treturn {\n\t\tanchorsWithKeyphrase: anchors,\n\t\tanchorsWithKeyphraseCount: anchors.length,\n\t};\n}\n\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"getAnchorsWithKeyphrase.js","names":["flatten","uniq","filterWordsFromArray","findTopicFormsInString","getWords","matchTextWithArray","parseSynonyms","processExactMatchRequest","urlHelper","WORD_BOUNDARY_WITH_HYPHEN","WORD_BOUNDARY_WITHOUT_HYPHEN","functionWords","isLinkingToSelf","anchorLink","siteUrlOrDomain","Boolean","areEqual","isRelativeFragmentURL","getAnchorsLinkingToSelf","anchors","anchorsLinkingToSelf","map","anchor","attributes","href","filter","index","getAnchorsContainingTopic","topicForms","locale","matchWordCustomHelper","anchorsContainingTopic","anchorText","innerText","percentWordMatches","getAnchorsWithSameTextAsTopic","customHelpers","exactMatchRequest","areHyphensWordBoundaries","getWordsCustomHelper","keyphraseAndSynonymsWords","keyphraseForms","synonymsForms","forEach","form","push","anchorsContainedInTopic","currentAnchor","currentAnchorText","anchorWords","filteredAnchorWords","length","request","exactMatchRequested","every","anchorWord","keyphrase","includes","i","topicForm","count","paper","researcher","getConfig","result","anchorsWithKeyphrase","anchorsWithKeyphraseCount","getText","getKeyword","originalTopics","getSynonyms","getTree","findAll","treeNode","name","getPermalink","getLocale","getResearch","getHelper","isExactMatchRequested","originalTopic"],"sources":["../../../src/languageProcessing/researches/getAnchorsWithKeyphrase.js"],"sourcesContent":["import { flatten, uniq } from \"lodash\";\nimport filterWordsFromArray from \"../helpers/word/filterWordsFromArray\";\nimport { findTopicFormsInString } from \"../helpers/match/findKeywordFormsInString\";\nimport getWords from \"../helpers/word/getWords\";\nimport matchTextWithArray from \"../helpers/match/matchTextWithArray\";\nimport parseSynonyms from \"../helpers/sanitize/parseSynonyms\";\nimport processExactMatchRequest from \"../helpers/match/processExactMatchRequest\";\nimport urlHelper from \"../helpers/url/url.js\";\nimport { WORD_BOUNDARY_WITH_HYPHEN, WORD_BOUNDARY_WITHOUT_HYPHEN } from \"../../config/wordBoundariesWithoutPunctuation\";\n\nlet functionWords = [];\n\n/**\n * Checks whether the anchor's link is a relative fragment or the same as the site url/domain.\n * Relative fragment links always point to the page itself.\n *\n * @param {String} anchorLink The link anchor.\n * @param {String} siteUrlOrDomain The site URL or domain of the paper.\n *\n * @returns {boolean} Whether the anchor's link is a relative fragment or the same as the site url/domain.\n */\nfunction isLinkingToSelf( anchorLink, siteUrlOrDomain ) {\n\treturn Boolean( urlHelper.areEqual( anchorLink, siteUrlOrDomain ) || urlHelper.isRelativeFragmentURL( anchorLink ) );\n}\n\n/**\n * Gets the anchors whose url is not linking at the current site url/domain.\n *\n * @param {Array} anchors An array with all anchors from the paper.\n * @param {String} siteUrlOrDomain The site URL or domain of the paper.\n *\n * @returns {Array} The array of all anchors whose url is not linking at the current site url/domain.\n */\nfunction getAnchorsLinkingToSelf( anchors, siteUrlOrDomain ) {\n\tconst anchorsLinkingToSelf = anchors.map( function( anchor ) {\n\t\tconst anchorLink = anchor.attributes.href;\n\t\t// Return false if there is no href attribute.\n\t\treturn anchorLink ? isLinkingToSelf( anchorLink, siteUrlOrDomain ) : false;\n\t} );\n\n\treturn anchors.filter( ( anchor, index ) => ! anchorsLinkingToSelf[ index ] );\n}\n\n/**\n * Gets the anchors with text that contains all content words of the topic (i.e. keyphrase or synonyms).\n *\n * @param {Array} anchors An array with all anchors from the paper\n * @param {Object} topicForms The object with topicForms. It contains all forms of the keyphrase and synonyms.\n * @param {String} locale The locale of the paper.\n * @param {Function} matchWordCustomHelper The helper function to match word in text.\n *\n * @returns {String[]} The array of all anchors with text that contains all content words of the keyphrase or synonyms.\n */\nfunction getAnchorsContainingTopic( anchors, topicForms, locale, matchWordCustomHelper ) {\n\tconst anchorsContainingTopic = anchors.map( function( anchor ) {\n\t\t// Only retrieve the anchor's text. This is because we only use the anchor text for the following check.\n\t\tconst anchorText = anchor.innerText();\n\t\treturn findTopicFormsInString( topicForms, anchorText, true, locale, matchWordCustomHelper ).percentWordMatches === 100;\n\t} );\n\n\treturn anchors.filter( ( anchor, index ) => anchorsContainingTopic[ index ] );\n}\n\n/**\n * Gets the anchors with text that has the same content words as the keyphrase or synonyms.\n *\n * @param {Array} anchors \t\tAn array with all anchors from the paper.\n * @param {Object} topicForms \t\tThe object with topicForms. It contains all forms of the keyphrase and synonyms.\n * @param {string} locale \t\tThe locale of the paper.\n * @param {Object} customHelpers \t\tAn object containing custom helpers.\n * @param {Object[]} exactMatchRequest \t\tAn array of objects containing the keyphrase and information on whether\n * \t\t\t\t\t\t\t\t\t\t\t\t\tthe exact match has been requested.\n * @param {boolean}\t \tareHyphensWordBoundaries\tWhether hyphens should be treated as word boundaries.\n *\n * @returns {Array} The array of all anchors with text that has the same content words as the keyphrase/synonyms.\n */\nfunction getAnchorsWithSameTextAsTopic( anchors, topicForms, locale, customHelpers, exactMatchRequest, areHyphensWordBoundaries ) {\n\tconst matchWordCustomHelper = customHelpers.matchWordCustomHelper;\n\tconst getWordsCustomHelper = customHelpers.getWordsCustomHelper;\n\n\t// Prepare keyphrase and synonym forms for comparison with anchors.\n\tconst keyphraseAndSynonymsWords = [ flatten( topicForms.keyphraseForms ) ];\n\tconst synonymsForms = topicForms.synonymsForms;\n\tsynonymsForms.forEach( form => keyphraseAndSynonymsWords.push( flatten( form ) ) );\n\n\t// The variable that will save all the anchors with text that has the same content words as the keyphrase/synonyms.\n\tconst anchorsContainedInTopic = [];\n\n\tanchors.forEach( function( currentAnchor ) {\n\t\tconst currentAnchorText = currentAnchor.innerText();\n\n\t\t/*\n * For keyphrase matching, we want to split words on hyphens and en-dashes, except for languages where hyphens shouldn't\n * be treated as word boundaries. Currently, the latter only applies to Indonesian, where hyphens are used to create plural forms of nouns,\n * such as \"buku-buku\" being a plural form of \"buku\". We want to treat forms like \"buku-buku\" as one word, so we shouldn't\n * split words on hyphens in Indonesian.\n * For languages where hyphens are treated as word boundaries we pass a custom word boundary regex string to the getWords helper\n * that includes whitespaces, hyphens (u002d), and en-dashes (u2013). Otherwise, we pass a word boundary regex that only includes\n * whitespaces and en-dashes.\n */\n\t\tlet anchorWords;\n\t\tif ( getWordsCustomHelper ) {\n\t\t\tanchorWords = uniq( getWordsCustomHelper( currentAnchorText ) );\n\t\t} else if ( areHyphensWordBoundaries ) {\n\t\t\tanchorWords = uniq( getWords( currentAnchorText, WORD_BOUNDARY_WITH_HYPHEN ) );\n\t\t} else {\n\t\t\tanchorWords = uniq( getWords( currentAnchorText, WORD_BOUNDARY_WITHOUT_HYPHEN ) );\n\t\t}\n\n\t\t/*\n\t\t * Filter function words out of the anchor text.\n\t\t * If the anchor text contains only function words, we keep them.\n\t\t */\n\t\tconst filteredAnchorWords = filterWordsFromArray( anchorWords, functionWords );\n\t\tif ( filteredAnchorWords.length > 0 ) {\n\t\t\tanchorWords = filteredAnchorWords;\n\t\t}\n\n\t\texactMatchRequest.forEach( request => {\n\t\t\t/*\n\t\t\t * Check a) if the exact match is requested for the keyphrase, and\n\t\t\t * b) if every content word in the anchor text is included in the keyphrase or synonym.\n\t\t\t */\n\t\t\tif ( request.exactMatchRequested &&\n\t\t\t\tanchorWords.every( anchorWord => request.keyphrase.includes( anchorWord ) ) ) {\n\t\t\t\tanchorsContainedInTopic.push( true );\n\t\t\t}\n\t\t} );\n\n\t\t// Check if every word in the anchor text is also present in the keyphrase/synonym.\n\t\tfor ( let i = 0; i < keyphraseAndSynonymsWords.length; i++ ) {\n\t\t\tconst topicForm = keyphraseAndSynonymsWords[ i ];\n\n\t\t\tif ( anchorWords.every( anchorWord => matchTextWithArray( anchorWord, topicForm, locale, matchWordCustomHelper ).count > 0 ) ) {\n\t\t\t\tanchorsContainedInTopic.push( true );\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t} );\n\n\treturn anchors.filter( ( anchor, index ) => anchorsContainedInTopic[ index ] );\n}\n\n/**\n * Checks whether the content words of the anchor text are the same as the content words of the keyphrase or synonym.\n * Also includes different word forms if the morphology is available.\n *\n * @param {Paper} paper The paper to research.\n * @param {Researcher} researcher The researcher to use.\n *\n * @returns {Object} The amount of anchor texts whose content words are the same as the keyphrase or synonyms' content words.\n */\nexport default function( paper, researcher ) {\n\tfunctionWords = researcher.getConfig( \"functionWords\" );\n\n\tconst areHyphensWordBoundaries = researcher.getConfig( \"areHyphensWordBoundaries\" );\n\n\tconst result = {\n\t\tanchorsWithKeyphrase: [],\n\t\tanchorsWithKeyphraseCount: 0,\n\t};\n\t// STEP 1.\n\t// If the paper's text is empty, return empty result.\n\tif ( paper.getText() === \"\" ) {\n\t\treturn result;\n\t}\n\n\t// STEP 2.\n\tconst keyphrase = paper.getKeyword();\n\t/*\n\t * If no keyphrase is set, return empty result.\n\t * This is a conscious decision where we won't assess the paper if the keyphrase is not set.\n\t * This includes a case where only the synonym is set but not the keyphrase.\n\t */\n\tif ( keyphrase === \"\" ) {\n\t\treturn result;\n\t}\n\t/*\n\t * When the keyphrase is set, also retrieve the synonyms and save them in \"topics\" array.\n\t * Eventually, the term topics here refers to either keyphrase or synonyms.\n\t */\n\tconst originalTopics = parseSynonyms( paper.getSynonyms() );\n\toriginalTopics.push( keyphrase );\n\n\t// Retrieve the anchors.\n\tlet anchors = paper.getTree().findAll( treeNode => treeNode.name === \"a\" );\n\t/*\n\t * We get the site's URL (e.g., https://yoast.com) or domain (e.g., yoast.com) from the paper.\n\t * In case of WordPress, the variable is a URL. In case of Shopify, it is a domain.\n\t */\n\tconst siteUrlOrDomain = paper.getPermalink();\n\n\t// STEP 3.\n\t// Get the anchors with urls that are not linking to the current site url/domain.\n\tanchors = getAnchorsLinkingToSelf( anchors, siteUrlOrDomain );\n\t// If all anchor urls are linking to the current site url/domain, return empty result.\n\tif ( anchors.length === 0 ) {\n\t\treturn result;\n\t}\n\n\tconst locale = paper.getLocale();\n\tconst topicForms = researcher.getResearch( \"morphology\" );\n\tconst customHelpers = {\n\t\tmatchWordCustomHelper: researcher.getHelper( \"matchWordCustomHelper\" ),\n\t\tgetWordsCustomHelper: researcher.getHelper( \"getWordsCustomHelper\" ),\n\t};\n\n\t// STEP 4.\n\t// Get the anchors with text that contains the keyphrase/synonyms' content words.\n\tanchors = getAnchorsContainingTopic( anchors, topicForms, locale, customHelpers.matchWordCustomHelper );\n\t// If all anchor texts do not contain the keyphrase/synonyms' content words, return empty result.\n\tif ( anchors.length === 0 ) {\n\t\treturn result;\n\t}\n\n\t// STEP 5.\n\t// Check if exact match is requested for every topic (keyphrase or synonym).\n\tconst isExactMatchRequested = originalTopics.map( originalTopic => processExactMatchRequest( originalTopic ) );\n\t// Get the anchors with text that has the same content words as the keyphrase/synonyms.\n\tanchors = getAnchorsWithSameTextAsTopic( anchors, topicForms, locale, customHelpers, isExactMatchRequested, areHyphensWordBoundaries );\n\n\treturn {\n\t\tanchorsWithKeyphrase: anchors,\n\t\tanchorsWithKeyphraseCount: anchors.length,\n\t};\n}\n\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,18 +1,11 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.DIFFICULTY = void 0;
|
|
7
|
-
exports.default = _default;
|
|
8
|
-
var _stripNumbers = _interopRequireDefault(require("../helpers/sanitize/stripNumbers.js"));
|
|
9
|
-
var _countSentences = _interopRequireDefault(require("../helpers/sentence/countSentences.js"));
|
|
10
|
-
var _countWords = _interopRequireDefault(require("../helpers/word/countWords.js"));
|
|
11
|
-
var _countSyllables = _interopRequireDefault(require("../helpers/syllables/countSyllables.js"));
|
|
12
|
-
var _lodash = require("lodash");
|
|
13
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
1
|
/** @module analyses/calculateFleschReading */
|
|
15
2
|
|
|
3
|
+
import stripNumbers from "../helpers/sanitize/stripNumbers.js";
|
|
4
|
+
import countSentences from "../helpers/sentence/countSentences.js";
|
|
5
|
+
import countWords from "../helpers/word/countWords.js";
|
|
6
|
+
import countSyllables from "../helpers/syllables/countSyllables.js";
|
|
7
|
+
import { clamp, inRange } from "lodash";
|
|
8
|
+
|
|
16
9
|
/**
|
|
17
10
|
* Calculates an average from a total and an amount
|
|
18
11
|
*
|
|
@@ -29,7 +22,7 @@ const getAverage = function (total, amount) {
|
|
|
29
22
|
* @readonly
|
|
30
23
|
* @enum {number}
|
|
31
24
|
*/
|
|
32
|
-
const DIFFICULTY =
|
|
25
|
+
export const DIFFICULTY = {
|
|
33
26
|
NO_DATA: -1,
|
|
34
27
|
VERY_EASY: 0,
|
|
35
28
|
EASY: 1,
|
|
@@ -52,15 +45,15 @@ const DIFFICULTY = exports.DIFFICULTY = {
|
|
|
52
45
|
function getDifficulty(score, scoreConfiguration) {
|
|
53
46
|
if (score >= scoreConfiguration.borders.veryEasy) {
|
|
54
47
|
return DIFFICULTY.VERY_EASY;
|
|
55
|
-
} else if (
|
|
48
|
+
} else if (inRange(score, scoreConfiguration.borders.easy, scoreConfiguration.borders.veryEasy)) {
|
|
56
49
|
return DIFFICULTY.EASY;
|
|
57
|
-
} else if (
|
|
50
|
+
} else if (inRange(score, scoreConfiguration.borders.fairlyEasy, scoreConfiguration.borders.easy)) {
|
|
58
51
|
return DIFFICULTY.FAIRLY_EASY;
|
|
59
|
-
} else if (
|
|
52
|
+
} else if (inRange(score, scoreConfiguration.borders.okay, scoreConfiguration.borders.fairlyEasy)) {
|
|
60
53
|
return DIFFICULTY.OKAY;
|
|
61
|
-
} else if (
|
|
54
|
+
} else if (inRange(score, scoreConfiguration.borders.fairlyDifficult, scoreConfiguration.borders.okay)) {
|
|
62
55
|
return DIFFICULTY.FAIRLY_DIFFICULT;
|
|
63
|
-
} else if (
|
|
56
|
+
} else if (inRange(score, scoreConfiguration.borders.difficult, scoreConfiguration.borders.fairlyDifficult)) {
|
|
64
57
|
return DIFFICULTY.DIFFICULT;
|
|
65
58
|
}
|
|
66
59
|
return DIFFICULTY.VERY_DIFFICULT;
|
|
@@ -107,7 +100,7 @@ function getConfiguration(researcher) {
|
|
|
107
100
|
*
|
|
108
101
|
* @returns {{ score: number, difficulty: DIFFICULTY }} The Flesch reading score.
|
|
109
102
|
*/
|
|
110
|
-
function
|
|
103
|
+
export default function (paper, researcher) {
|
|
111
104
|
const syllables = researcher.getConfig("syllables");
|
|
112
105
|
const memoizedTokenizer = researcher.getHelper("memoizedTokenizer");
|
|
113
106
|
const languageSpecificConfiguration = getConfiguration(researcher);
|
|
@@ -119,9 +112,9 @@ function _default(paper, researcher) {
|
|
|
119
112
|
difficulty: DIFFICULTY.NO_DATA
|
|
120
113
|
};
|
|
121
114
|
}
|
|
122
|
-
text = (
|
|
123
|
-
const numberOfSentences = (
|
|
124
|
-
const numberOfWords = (
|
|
115
|
+
text = stripNumbers(text);
|
|
116
|
+
const numberOfSentences = countSentences(text, memoizedTokenizer);
|
|
117
|
+
const numberOfWords = countWords(text);
|
|
125
118
|
|
|
126
119
|
// Do not show the Flesch reading ease when there is not enough data for the FRE to make sense. Also used to prevent division by zero errors.
|
|
127
120
|
// A score of -1 signals to the code down the line that no valid FRE was calculated.
|
|
@@ -131,7 +124,7 @@ function _default(paper, researcher) {
|
|
|
131
124
|
difficulty: DIFFICULTY.NO_DATA
|
|
132
125
|
};
|
|
133
126
|
}
|
|
134
|
-
const numberOfSyllables = (
|
|
127
|
+
const numberOfSyllables = countSyllables(text, syllables);
|
|
135
128
|
const averageWordsPerSentence = getAverage(numberOfWords, numberOfSentences);
|
|
136
129
|
const syllablesPer100Words = numberOfSyllables * (100 / numberOfWords);
|
|
137
130
|
const statistics = {
|
|
@@ -142,7 +135,7 @@ function _default(paper, researcher) {
|
|
|
142
135
|
syllablesPer100Words
|
|
143
136
|
};
|
|
144
137
|
const getScore = researcher.getHelper("fleschReadingScore");
|
|
145
|
-
const score =
|
|
138
|
+
const score = clamp(getScore(statistics), 0, 100);
|
|
146
139
|
const difficulty = getDifficulty(score, languageSpecificConfiguration);
|
|
147
140
|
return {
|
|
148
141
|
score,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getFleschReadingScore.js","names":["
|
|
1
|
+
{"version":3,"file":"getFleschReadingScore.js","names":["stripNumbers","countSentences","countWords","countSyllables","clamp","inRange","getAverage","total","amount","DIFFICULTY","NO_DATA","VERY_EASY","EASY","FAIRLY_EASY","OKAY","FAIRLY_DIFFICULT","DIFFICULT","VERY_DIFFICULT","getDifficulty","score","scoreConfiguration","borders","veryEasy","easy","fairlyEasy","okay","fairlyDifficult","difficult","getConfiguration","researcher","languageSpecificConfig","getConfig","defaultConfig","veryDifficult","scores","paper","syllables","memoizedTokenizer","getHelper","languageSpecificConfiguration","text","getText","difficulty","numberOfSentences","numberOfWords","numberOfSyllables","averageWordsPerSentence","syllablesPer100Words","statistics","getScore"],"sources":["../../../src/languageProcessing/researches/getFleschReadingScore.js"],"sourcesContent":["/** @module analyses/calculateFleschReading */\n\nimport stripNumbers from \"../helpers/sanitize/stripNumbers.js\";\nimport countSentences from \"../helpers/sentence/countSentences.js\";\nimport countWords from \"../helpers/word/countWords.js\";\nimport countSyllables from \"../helpers/syllables/countSyllables.js\";\nimport { clamp, inRange } from \"lodash\";\n\n/**\n * Calculates an average from a total and an amount\n *\n * @param {number} total The total.\n * @param {number} amount The amount.\n * @returns {number} The average from the total and the amount.\n */\nconst getAverage = function( total, amount ) {\n\treturn total / amount;\n};\n\n/**\n * The Flesch reading ease difficulty.\n * @readonly\n * @enum {number}\n */\nexport const DIFFICULTY = {\n\tNO_DATA: -1,\n\tVERY_EASY: 0,\n\tEASY: 1,\n\tFAIRLY_EASY: 2,\n\tOKAY: 3,\n\tFAIRLY_DIFFICULT: 4,\n\tDIFFICULT: 5,\n\tVERY_DIFFICULT: 6,\n};\n\n/**\n * Returns the Flesch reading ease difficulty based on the boundaries\n * defined in the score configuration.\n *\n * @param {number} score The Flesch reading ease score.\n * @param {Object} scoreConfiguration The score configuration.\n *\n * @returns {DIFFICULTY} The Flesch reading ease difficulty.\n */\nfunction getDifficulty( score, scoreConfiguration ) {\n\tif ( score >= scoreConfiguration.borders.veryEasy ) {\n\t\treturn DIFFICULTY.VERY_EASY;\n\t} else if ( inRange( score, scoreConfiguration.borders.easy, scoreConfiguration.borders.veryEasy ) ) {\n\t\treturn DIFFICULTY.EASY;\n\t} else if ( inRange( score, scoreConfiguration.borders.fairlyEasy, scoreConfiguration.borders.easy ) ) {\n\t\treturn DIFFICULTY.FAIRLY_EASY;\n\t} else if ( inRange( score, scoreConfiguration.borders.okay, scoreConfiguration.borders.fairlyEasy ) ) {\n\t\treturn DIFFICULTY.OKAY;\n\t} else if ( inRange( score, scoreConfiguration.borders.fairlyDifficult, scoreConfiguration.borders.okay ) ) {\n\t\treturn DIFFICULTY.FAIRLY_DIFFICULT;\n\t} else if ( inRange( score, scoreConfiguration.borders.difficult, scoreConfiguration.borders.fairlyDifficult ) ) {\n\t\treturn DIFFICULTY.DIFFICULT;\n\t}\n\n\treturn DIFFICULTY.VERY_DIFFICULT;\n}\n\n/**\n * Retrieves the scoring configuration defining the boundaries to use to\n * determine the Flesch reading ease difficulty.\n *\n * @param {Researcher} researcher The researcher.\n *\n * @returns {Object} The language specific scoring configuration, or the default configuration if not available.\n */\nfunction getConfiguration( researcher ) {\n\tconst languageSpecificConfig = researcher.getConfig( \"fleschReadingEaseScores\" );\n\tconst defaultConfig = {\n\t\tborders: {\n\t\t\tveryEasy: 90,\n\t\t\teasy: 80,\n\t\t\tfairlyEasy: 70,\n\t\t\tokay: 60,\n\t\t\tfairlyDifficult: 50,\n\t\t\tdifficult: 30,\n\t\t\tveryDifficult: 0,\n\t\t},\n\t\tscores: {\n\t\t\tveryEasy: 9,\n\t\t\teasy: 9,\n\t\t\tfairlyEasy: 9,\n\t\t\tokay: 9,\n\t\t\tfairlyDifficult: 6,\n\t\t\tdifficult: 3,\n\t\t\tveryDifficult: 3,\n\t\t},\n\t};\n\treturn languageSpecificConfig ? languageSpecificConfig : defaultConfig;\n}\n\n/**\n * This calculates the Flesch reading score for a given text.\n *\n * @param {Paper} paper The paper containing the text.\n * @param {Researcher} researcher The researcher.\n *\n * @returns {{ score: number, difficulty: DIFFICULTY }} The Flesch reading score.\n */\nexport default function( paper, researcher ) {\n\tconst syllables = researcher.getConfig( \"syllables\" );\n\tconst memoizedTokenizer = researcher.getHelper( \"memoizedTokenizer\" );\n\tconst languageSpecificConfiguration = getConfiguration( researcher );\n\n\tlet text = paper.getText();\n\tif ( text === \"\" ) {\n\t\t// A score of -1 signals to the code down the line that no valid FRE was calculated.\n\t\treturn {\n\t\t\tscore: -1,\n\t\t\tdifficulty: DIFFICULTY.NO_DATA,\n\t\t};\n\t}\n\n\ttext = stripNumbers( text );\n\n\tconst numberOfSentences = countSentences( text, memoizedTokenizer );\n\tconst numberOfWords = countWords( text );\n\n\t// Do not show the Flesch reading ease when there is not enough data for the FRE to make sense. Also used to prevent division by zero errors.\n\t// A score of -1 signals to the code down the line that no valid FRE was calculated.\n\tif ( numberOfSentences < 1 || numberOfWords <= 10 ) {\n\t\treturn {\n\t\t\tscore: -1,\n\t\t\tdifficulty: DIFFICULTY.NO_DATA,\n\t\t};\n\t}\n\n\tconst numberOfSyllables = countSyllables( text, syllables );\n\tconst averageWordsPerSentence = getAverage( numberOfWords, numberOfSentences );\n\tconst syllablesPer100Words = numberOfSyllables * ( 100 / numberOfWords );\n\tconst statistics = {\n\t\tnumberOfSentences,\n\t\tnumberOfWords,\n\t\tnumberOfSyllables,\n\t\taverageWordsPerSentence,\n\t\tsyllablesPer100Words,\n\t};\n\n\tconst getScore = researcher.getHelper( \"fleschReadingScore\" );\n\n\tconst score = clamp( getScore( statistics ), 0, 100 );\n\n\tconst difficulty = getDifficulty( score, languageSpecificConfiguration );\n\n\treturn { score, difficulty };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,12 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
import getAllWordsFromTree from "../helpers/word/getAllWordsFromTree";
|
|
2
2
|
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = getKeyphraseDensity;
|
|
7
|
-
exports.getKeywordDensity = getKeywordDensity;
|
|
8
|
-
var _getAllWordsFromTree = _interopRequireDefault(require("../helpers/word/getAllWordsFromTree"));
|
|
9
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
3
|
/**
|
|
11
4
|
* Calculates the keyphrase density.
|
|
12
5
|
*
|
|
@@ -15,7 +8,7 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
|
|
|
15
8
|
*
|
|
16
9
|
* @returns {number} The keyphrase density.
|
|
17
10
|
*/
|
|
18
|
-
function getKeyphraseDensity(paper, researcher) {
|
|
11
|
+
export default function getKeyphraseDensity(paper, researcher) {
|
|
19
12
|
const getWordsCustomHelper = researcher.getHelper("getWordsCustomHelper");
|
|
20
13
|
let wordCount = 0;
|
|
21
14
|
|
|
@@ -23,7 +16,7 @@ function getKeyphraseDensity(paper, researcher) {
|
|
|
23
16
|
if (getWordsCustomHelper) {
|
|
24
17
|
wordCount = getWordsCustomHelper(paper.getText()).length;
|
|
25
18
|
} else {
|
|
26
|
-
wordCount = (
|
|
19
|
+
wordCount = getAllWordsFromTree(paper).length;
|
|
27
20
|
}
|
|
28
21
|
if (wordCount === 0) {
|
|
29
22
|
return 0;
|
|
@@ -42,7 +35,7 @@ function getKeyphraseDensity(paper, researcher) {
|
|
|
42
35
|
*
|
|
43
36
|
* @returns {number} The keyphrase density.
|
|
44
37
|
*/
|
|
45
|
-
function getKeywordDensity(paper, researcher) {
|
|
38
|
+
export function getKeywordDensity(paper, researcher) {
|
|
46
39
|
console.warn("This function is deprecated, use getKeyphraseDensity instead.");
|
|
47
40
|
return getKeyphraseDensity(paper, researcher);
|
|
48
41
|
}
|