axyseo 2.0.0-alpha.0.0.37 → 2.0.0-alpha.0.0.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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 +134 -0
- package/build/config/diacritics.js.map +1 -0
- package/build/config/getTransliterations.js +3564 -0
- package/build/config/getTransliterations.js.map +1 -0
- package/build/config/transliterationsWPstyle.js +1417 -0
- package/build/config/transliterationsWPstyle.js.map +1 -0
- package/build/config/wordBoundaries.js +20 -0
- package/build/config/wordBoundaries.js.map +1 -0
- package/build/config/wordBoundariesWithoutPunctuation.js +10 -0
- package/build/config/wordBoundariesWithoutPunctuation.js.map +1 -0
- package/build/const/analysis.js +14 -0
- package/build/const/analysis.js.map +1 -0
- package/build/errors/invalidType.js +15 -0
- package/build/errors/invalidType.js.map +1 -0
- package/build/errors/missingArgument.js +15 -0
- package/build/errors/missingArgument.js.map +1 -0
- package/build/helpers/createMeasurementElement.js +39 -0
- package/build/helpers/createMeasurementElement.js.map +1 -0
- package/build/helpers/domManipulation.js +61 -0
- package/build/helpers/domManipulation.js.map +1 -0
- package/build/helpers/errors.js +21 -0
- package/build/helpers/errors.js.map +1 -0
- package/build/helpers/factory.js +201 -0
- package/build/helpers/factory.js.map +1 -0
- package/build/helpers/formatNumber.js +12 -0
- package/build/helpers/formatNumber.js.map +1 -0
- package/build/helpers/formatString.js +33 -0
- package/build/helpers/formatString.js.map +1 -0
- package/build/helpers/getLanguagesWithWordComplexity.js +9 -0
- package/build/helpers/getLanguagesWithWordComplexity.js.map +1 -0
- package/build/helpers/getLanguagesWithWordFormSupport.js +10 -0
- package/build/helpers/getLanguagesWithWordFormSupport.js.map +1 -0
- package/build/helpers/getWordComplexityConfig.js +21 -0
- package/build/helpers/getWordComplexityConfig.js.map +1 -0
- package/build/helpers/getWordComplexityHelper.js +21 -0
- package/build/helpers/getWordComplexityHelper.js.map +1 -0
- package/build/helpers/htmlEntities.js +16 -0
- package/build/helpers/htmlEntities.js.map +1 -0
- package/build/helpers/includesAny.js +19 -0
- package/build/helpers/includesAny.js.map +1 -0
- package/build/helpers/index.js +122 -0
- package/build/helpers/index.js.map +1 -0
- package/build/helpers/shortlinker/Shortlinker.js +72 -0
- package/build/helpers/shortlinker/Shortlinker.js.map +1 -0
- package/build/helpers/shortlinker/index.js +2 -0
- package/build/helpers/shortlinker/index.js.map +1 -0
- package/build/helpers/shortlinker/singleton.js +68 -0
- package/build/helpers/shortlinker/singleton.js.map +1 -0
- package/build/helpers/types.js +30 -0
- package/build/helpers/types.js.map +1 -0
- package/build/index.js +41 -0
- package/build/index.js.map +1 -0
- package/build/languageProcessing/AbstractResearcher.js +341 -0
- package/build/languageProcessing/AbstractResearcher.js.map +1 -0
- package/build/languageProcessing/helpers/highlighting/getMarkingsInSentence.js +116 -0
- package/build/languageProcessing/helpers/highlighting/getMarkingsInSentence.js.map +1 -0
- package/build/languageProcessing/helpers/html/getFieldsToMark.js +32 -0
- package/build/languageProcessing/helpers/html/getFieldsToMark.js.map +1 -0
- package/build/languageProcessing/helpers/html/getSubheadingTexts.js +42 -0
- package/build/languageProcessing/helpers/html/getSubheadingTexts.js.map +1 -0
- package/build/languageProcessing/helpers/html/getSubheadings.js +82 -0
- package/build/languageProcessing/helpers/html/getSubheadings.js.map +1 -0
- package/build/languageProcessing/helpers/html/html.js +144 -0
- package/build/languageProcessing/helpers/html/html.js.map +1 -0
- package/build/languageProcessing/helpers/html/htmlParser.js +125 -0
- package/build/languageProcessing/helpers/html/htmlParser.js.map +1 -0
- package/build/languageProcessing/helpers/html/matchParagraphs.js +56 -0
- package/build/languageProcessing/helpers/html/matchParagraphs.js.map +1 -0
- package/build/languageProcessing/helpers/html/normalizeHTML.js +17 -0
- package/build/languageProcessing/helpers/html/normalizeHTML.js.map +1 -0
- package/build/languageProcessing/helpers/image/getAltAttribute.js +18 -0
- package/build/languageProcessing/helpers/image/getAltAttribute.js.map +1 -0
- package/build/languageProcessing/helpers/image/getImagesInTree.js +15 -0
- package/build/languageProcessing/helpers/image/getImagesInTree.js.map +1 -0
- package/build/languageProcessing/helpers/image/imageInText.js +19 -0
- package/build/languageProcessing/helpers/image/imageInText.js.map +1 -0
- package/build/languageProcessing/helpers/index.js +6 -0
- package/build/languageProcessing/helpers/index.js.map +1 -0
- package/build/languageProcessing/helpers/language/getLanguage.js +10 -0
- package/build/languageProcessing/helpers/language/getLanguage.js.map +1 -0
- package/build/languageProcessing/helpers/link/checkNofollow.js +35 -0
- package/build/languageProcessing/helpers/link/checkNofollow.js.map +1 -0
- package/build/languageProcessing/helpers/link/getAnchorsFromText.js +31 -0
- package/build/languageProcessing/helpers/link/getAnchorsFromText.js.map +1 -0
- package/build/languageProcessing/helpers/link/getLinkType.js +30 -0
- package/build/languageProcessing/helpers/link/getLinkType.js.map +1 -0
- package/build/languageProcessing/helpers/match/findKeywordFormsInString.js +94 -0
- package/build/languageProcessing/helpers/match/findKeywordFormsInString.js.map +1 -0
- package/build/languageProcessing/helpers/match/isDoubleQuoted.js +13 -0
- package/build/languageProcessing/helpers/match/isDoubleQuoted.js.map +1 -0
- package/build/languageProcessing/helpers/match/matchTextWithArray.js +35 -0
- package/build/languageProcessing/helpers/match/matchTextWithArray.js.map +1 -0
- package/build/languageProcessing/helpers/match/matchTextWithTransliteration.js +52 -0
- package/build/languageProcessing/helpers/match/matchTextWithTransliteration.js.map +1 -0
- package/build/languageProcessing/helpers/match/matchTextWithWord.js +41 -0
- package/build/languageProcessing/helpers/match/matchTextWithWord.js.map +1 -0
- package/build/languageProcessing/helpers/match/matchWordFormsWithSentence.js +155 -0
- package/build/languageProcessing/helpers/match/matchWordFormsWithSentence.js.map +1 -0
- package/build/languageProcessing/helpers/match/processExactMatchRequest.js +23 -0
- package/build/languageProcessing/helpers/match/processExactMatchRequest.js.map +1 -0
- package/build/languageProcessing/helpers/morphology/baseStemmer.js +12 -0
- package/build/languageProcessing/helpers/morphology/baseStemmer.js.map +1 -0
- package/build/languageProcessing/helpers/morphology/buildFormRule.js +20 -0
- package/build/languageProcessing/helpers/morphology/buildFormRule.js.map +1 -0
- package/build/languageProcessing/helpers/morphology/buildTopicStems.js +154 -0
- package/build/languageProcessing/helpers/morphology/buildTopicStems.js.map +1 -0
- package/build/languageProcessing/helpers/morphology/createRulesFromArrays.js +41 -0
- package/build/languageProcessing/helpers/morphology/createRulesFromArrays.js.map +1 -0
- package/build/languageProcessing/helpers/morphology/exceptionListHelpers.js +63 -0
- package/build/languageProcessing/helpers/morphology/exceptionListHelpers.js.map +1 -0
- package/build/languageProcessing/helpers/morphology/findMatchingEndingInArray.js +23 -0
- package/build/languageProcessing/helpers/morphology/findMatchingEndingInArray.js.map +1 -0
- package/build/languageProcessing/helpers/morphology/flattenSortLength.js +14 -0
- package/build/languageProcessing/helpers/morphology/flattenSortLength.js.map +1 -0
- package/build/languageProcessing/helpers/morphology/getAllWordsFromPaper.js +29 -0
- package/build/languageProcessing/helpers/morphology/getAllWordsFromPaper.js.map +1 -0
- package/build/languageProcessing/helpers/morphology/regexHelpers.js +45 -0
- package/build/languageProcessing/helpers/morphology/regexHelpers.js.map +1 -0
- package/build/languageProcessing/helpers/morphology/stemHelpers.js +39 -0
- package/build/languageProcessing/helpers/morphology/stemHelpers.js.map +1 -0
- package/build/languageProcessing/helpers/morphology/stemPrefixedFunctionWords.js +33 -0
- package/build/languageProcessing/helpers/morphology/stemPrefixedFunctionWords.js.map +1 -0
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/directPrecedenceException.js +36 -0
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/directPrecedenceException.js.map +1 -0
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/getClausesSplitOnStopWords.js +110 -0
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/getClausesSplitOnStopWords.js.map +1 -0
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/nonDirectParticiplePrecedenceException.js +39 -0
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/nonDirectParticiplePrecedenceException.js.map +1 -0
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/getClauses.js +214 -0
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/getClauses.js.map +1 -0
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/getIndicesWithRegex.js +21 -0
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/getIndicesWithRegex.js.map +1 -0
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/matchRegularParticiples.js +23 -0
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/matchRegularParticiples.js.map +1 -0
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/precedenceException.js +40 -0
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/precedenceException.js.map +1 -0
- package/build/languageProcessing/helpers/prominentWords/determineProminentWords.js +191 -0
- package/build/languageProcessing/helpers/prominentWords/determineProminentWords.js.map +1 -0
- package/build/languageProcessing/helpers/regex/createRegexFromArray.js +32 -0
- package/build/languageProcessing/helpers/regex/createRegexFromArray.js.map +1 -0
- package/build/languageProcessing/helpers/regex/createRegexFromDoubleArray.js +33 -0
- package/build/languageProcessing/helpers/regex/createRegexFromDoubleArray.js.map +1 -0
- package/build/languageProcessing/helpers/regex/createWordRegex.js +28 -0
- package/build/languageProcessing/helpers/regex/createWordRegex.js.map +1 -0
- package/build/languageProcessing/helpers/regex/matchStringWithRegex.js +18 -0
- package/build/languageProcessing/helpers/regex/matchStringWithRegex.js.map +1 -0
- package/build/languageProcessing/helpers/regex/searchAndReplaceWithOneRegex.js +15 -0
- package/build/languageProcessing/helpers/regex/searchAndReplaceWithOneRegex.js.map +1 -0
- package/build/languageProcessing/helpers/sanitize/doubleQuotes.js +13 -0
- package/build/languageProcessing/helpers/sanitize/doubleQuotes.js.map +1 -0
- package/build/languageProcessing/helpers/sanitize/filterShortcodesFromTree.js +123 -0
- package/build/languageProcessing/helpers/sanitize/filterShortcodesFromTree.js.map +1 -0
- package/build/languageProcessing/helpers/sanitize/mergeListItems.js +24 -0
- package/build/languageProcessing/helpers/sanitize/mergeListItems.js.map +1 -0
- package/build/languageProcessing/helpers/sanitize/parseSynonyms.js +18 -0
- package/build/languageProcessing/helpers/sanitize/parseSynonyms.js.map +1 -0
- package/build/languageProcessing/helpers/sanitize/quotes.js +39 -0
- package/build/languageProcessing/helpers/sanitize/quotes.js.map +1 -0
- package/build/languageProcessing/helpers/sanitize/removeEmailAddresses.js +13 -0
- package/build/languageProcessing/helpers/sanitize/removeEmailAddresses.js.map +1 -0
- package/build/languageProcessing/helpers/sanitize/removePunctuation.js +58 -0
- package/build/languageProcessing/helpers/sanitize/removePunctuation.js.map +1 -0
- package/build/languageProcessing/helpers/sanitize/removePunctuationExceptQuotes.js +18 -0
- package/build/languageProcessing/helpers/sanitize/removePunctuationExceptQuotes.js.map +1 -0
- package/build/languageProcessing/helpers/sanitize/removeSentenceTerminators.js +14 -0
- package/build/languageProcessing/helpers/sanitize/removeSentenceTerminators.js.map +1 -0
- package/build/languageProcessing/helpers/sanitize/removeURLs.js +13 -0
- package/build/languageProcessing/helpers/sanitize/removeURLs.js.map +1 -0
- package/build/languageProcessing/helpers/sanitize/sanitizeLineBreakTag.js +12 -0
- package/build/languageProcessing/helpers/sanitize/sanitizeLineBreakTag.js.map +1 -0
- package/build/languageProcessing/helpers/sanitize/sanitizeString.js +18 -0
- package/build/languageProcessing/helpers/sanitize/sanitizeString.js.map +1 -0
- package/build/languageProcessing/helpers/sanitize/stripHTMLTags.js +50 -0
- package/build/languageProcessing/helpers/sanitize/stripHTMLTags.js.map +1 -0
- package/build/languageProcessing/helpers/sanitize/stripNonTextTags.js +16 -0
- package/build/languageProcessing/helpers/sanitize/stripNonTextTags.js.map +1 -0
- package/build/languageProcessing/helpers/sanitize/stripNumbers.js +20 -0
- package/build/languageProcessing/helpers/sanitize/stripNumbers.js.map +1 -0
- package/build/languageProcessing/helpers/sanitize/stripSpaces.js +23 -0
- package/build/languageProcessing/helpers/sanitize/stripSpaces.js.map +1 -0
- package/build/languageProcessing/helpers/sanitize/stripWordBoundaries.js +57 -0
- package/build/languageProcessing/helpers/sanitize/stripWordBoundaries.js.map +1 -0
- package/build/languageProcessing/helpers/sanitize/unifyWhitespace.js +55 -0
- package/build/languageProcessing/helpers/sanitize/unifyWhitespace.js.map +1 -0
- package/build/languageProcessing/helpers/sentence/SentenceTokenizer.js +558 -0
- package/build/languageProcessing/helpers/sentence/SentenceTokenizer.js.map +1 -0
- package/build/languageProcessing/helpers/sentence/countSentences.js +21 -0
- package/build/languageProcessing/helpers/sentence/countSentences.js.map +1 -0
- package/build/languageProcessing/helpers/sentence/getSentences.js +64 -0
- package/build/languageProcessing/helpers/sentence/getSentences.js.map +1 -0
- package/build/languageProcessing/helpers/sentence/getSentencesFromTree.js +53 -0
- package/build/languageProcessing/helpers/sentence/getSentencesFromTree.js.map +1 -0
- package/build/languageProcessing/helpers/sentence/memoizedSentenceTokenizer.js +31 -0
- package/build/languageProcessing/helpers/sentence/memoizedSentenceTokenizer.js.map +1 -0
- package/build/languageProcessing/helpers/sentence/sentencesLength.js +31 -0
- package/build/languageProcessing/helpers/sentence/sentencesLength.js.map +1 -0
- package/build/languageProcessing/helpers/syllables/DeviationFragment.js +102 -0
- package/build/languageProcessing/helpers/syllables/DeviationFragment.js.map +1 -0
- package/build/languageProcessing/helpers/syllables/countSyllables.js +166 -0
- package/build/languageProcessing/helpers/syllables/countSyllables.js.map +1 -0
- package/build/languageProcessing/helpers/syllables/syllableCountIterator.js +56 -0
- package/build/languageProcessing/helpers/syllables/syllableCountIterator.js.map +1 -0
- package/build/languageProcessing/helpers/syllables/syllableCountStep.js +68 -0
- package/build/languageProcessing/helpers/syllables/syllableCountStep.js.map +1 -0
- package/build/languageProcessing/helpers/transform/transformWordsWithHyphens.js +18 -0
- package/build/languageProcessing/helpers/transform/transformWordsWithHyphens.js.map +1 -0
- package/build/languageProcessing/helpers/transliterate/replaceDiacritics.js +19 -0
- package/build/languageProcessing/helpers/transliterate/replaceDiacritics.js.map +1 -0
- package/build/languageProcessing/helpers/transliterate/specialCharacterMappings.js +183 -0
- package/build/languageProcessing/helpers/transliterate/specialCharacterMappings.js.map +1 -0
- package/build/languageProcessing/helpers/transliterate/transliterate.js +18 -0
- package/build/languageProcessing/helpers/transliterate/transliterate.js.map +1 -0
- package/build/languageProcessing/helpers/transliterate/transliterateWPstyle.js +19 -0
- package/build/languageProcessing/helpers/transliterate/transliterateWPstyle.js.map +1 -0
- package/build/languageProcessing/helpers/url/parseSlug.js +11 -0
- package/build/languageProcessing/helpers/url/parseSlug.js.map +1 -0
- package/build/languageProcessing/helpers/url/url.js +168 -0
- package/build/languageProcessing/helpers/url/url.js.map +1 -0
- package/build/languageProcessing/helpers/word/addWordboundary.js +35 -0
- package/build/languageProcessing/helpers/word/addWordboundary.js.map +1 -0
- package/build/languageProcessing/helpers/word/areWordsInSentence.js +17 -0
- package/build/languageProcessing/helpers/word/areWordsInSentence.js.map +1 -0
- package/build/languageProcessing/helpers/word/countMetaDescriptionLength.js +18 -0
- package/build/languageProcessing/helpers/word/countMetaDescriptionLength.js.map +1 -0
- package/build/languageProcessing/helpers/word/countWords.js +15 -0
- package/build/languageProcessing/helpers/word/countWords.js.map +1 -0
- package/build/languageProcessing/helpers/word/createPunctuationTokens.js +41 -0
- package/build/languageProcessing/helpers/word/createPunctuationTokens.js.map +1 -0
- package/build/languageProcessing/helpers/word/filterWordsFromArray.js +16 -0
- package/build/languageProcessing/helpers/word/filterWordsFromArray.js.map +1 -0
- package/build/languageProcessing/helpers/word/followsIndex.js +24 -0
- package/build/languageProcessing/helpers/word/followsIndex.js.map +1 -0
- package/build/languageProcessing/helpers/word/getAllWordsFromTree.js +24 -0
- package/build/languageProcessing/helpers/word/getAllWordsFromTree.js.map +1 -0
- package/build/languageProcessing/helpers/word/getWords.js +37 -0
- package/build/languageProcessing/helpers/word/getWords.js.map +1 -0
- package/build/languageProcessing/helpers/word/includesIndex.js +29 -0
- package/build/languageProcessing/helpers/word/includesIndex.js.map +1 -0
- package/build/languageProcessing/helpers/word/indices.js +130 -0
- package/build/languageProcessing/helpers/word/indices.js.map +1 -0
- package/build/languageProcessing/helpers/word/markWordsInSentences.js +177 -0
- package/build/languageProcessing/helpers/word/markWordsInSentences.js.map +1 -0
- package/build/languageProcessing/helpers/word/matchWordInSentence.js +56 -0
- package/build/languageProcessing/helpers/word/matchWordInSentence.js.map +1 -0
- package/build/languageProcessing/helpers/word/splitIntoTokens.js +46 -0
- package/build/languageProcessing/helpers/word/splitIntoTokens.js.map +1 -0
- package/build/languageProcessing/index.js +42 -0
- package/build/languageProcessing/index.js.map +1 -0
- package/build/languageProcessing/languages/_default/Researcher.js +35 -0
- package/build/languageProcessing/languages/_default/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/_default/helpers/getStemmer.js +14 -0
- package/build/languageProcessing/languages/_default/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/ar/Researcher.js +46 -0
- package/build/languageProcessing/languages/ar/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/ar/config/firstWordExceptions.js +12 -0
- package/build/languageProcessing/languages/ar/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/ar/config/functionWords.js +74 -0
- package/build/languageProcessing/languages/ar/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/ar/config/internal/passiveVerbsWithLongVowel.js +7 -0
- package/build/languageProcessing/languages/ar/config/internal/passiveVerbsWithLongVowel.js.map +1 -0
- package/build/languageProcessing/languages/ar/config/prefixedFunctionWords.js +5 -0
- package/build/languageProcessing/languages/ar/config/prefixedFunctionWords.js.map +1 -0
- package/build/languageProcessing/languages/ar/config/transitionWords.js +7 -0
- package/build/languageProcessing/languages/ar/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/ar/config/twoPartTransitionWords.js +8 -0
- package/build/languageProcessing/languages/ar/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/ar/helpers/createBasicWordForms.js +33 -0
- package/build/languageProcessing/languages/ar/helpers/createBasicWordForms.js.map +1 -0
- package/build/languageProcessing/languages/ar/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/ar/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/ar/helpers/internal/stem.js +629 -0
- package/build/languageProcessing/languages/ar/helpers/internal/stem.js.map +1 -0
- package/build/languageProcessing/languages/ar/helpers/isPassiveSentence.js +34 -0
- package/build/languageProcessing/languages/ar/helpers/isPassiveSentence.js.map +1 -0
- package/build/languageProcessing/languages/ca/Researcher.js +44 -0
- package/build/languageProcessing/languages/ca/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/ca/config/sentenceLength.js +4 -0
- package/build/languageProcessing/languages/ca/config/sentenceLength.js.map +1 -0
- package/build/languageProcessing/languages/ca/config/transitionWords.js +7 -0
- package/build/languageProcessing/languages/ca/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/ca/config/twoPartTransitionWords.js +8 -0
- package/build/languageProcessing/languages/ca/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/ca/helpers/getStemmer.js +14 -0
- package/build/languageProcessing/languages/ca/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/cs/Researcher.js +44 -0
- package/build/languageProcessing/languages/cs/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/cs/config/firstWordExceptions.js +14 -0
- package/build/languageProcessing/languages/cs/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/cs/config/functionWords.js +44 -0
- package/build/languageProcessing/languages/cs/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/cs/config/internal/passiveVoiceAuxiliaries.js +4 -0
- package/build/languageProcessing/languages/cs/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
- package/build/languageProcessing/languages/cs/config/internal/passiveVoiceEndings.js +8 -0
- package/build/languageProcessing/languages/cs/config/internal/passiveVoiceEndings.js.map +1 -0
- package/build/languageProcessing/languages/cs/config/stopWords.js +6 -0
- package/build/languageProcessing/languages/cs/config/stopWords.js.map +1 -0
- package/build/languageProcessing/languages/cs/config/transitionWords.js +7 -0
- package/build/languageProcessing/languages/cs/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/cs/config/twoPartTransitionWords.js +8 -0
- package/build/languageProcessing/languages/cs/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/cs/helpers/getClauses.js +28 -0
- package/build/languageProcessing/languages/cs/helpers/getClauses.js.map +1 -0
- package/build/languageProcessing/languages/cs/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/cs/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/cs/helpers/internal/getParticiples.js +18 -0
- package/build/languageProcessing/languages/cs/helpers/internal/getParticiples.js.map +1 -0
- package/build/languageProcessing/languages/cs/helpers/internal/stem.js +335 -0
- package/build/languageProcessing/languages/cs/helpers/internal/stem.js.map +1 -0
- package/build/languageProcessing/languages/cs/values/Clause.js +38 -0
- package/build/languageProcessing/languages/cs/values/Clause.js.map +1 -0
- package/build/languageProcessing/languages/de/Researcher.js +53 -0
- package/build/languageProcessing/languages/de/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/de/config/firstWordExceptions.js +14 -0
- package/build/languageProcessing/languages/de/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/de/config/functionWords.js +95 -0
- package/build/languageProcessing/languages/de/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/de/config/internal/exceptionsParticiplesActive.js +7 -0
- package/build/languageProcessing/languages/de/config/internal/exceptionsParticiplesActive.js.map +1 -0
- package/build/languageProcessing/languages/de/config/internal/passiveVoiceAuxiliaries.js +23 -0
- package/build/languageProcessing/languages/de/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
- package/build/languageProcessing/languages/de/config/internal/passiveVoiceIrregulars.js +9 -0
- package/build/languageProcessing/languages/de/config/internal/passiveVoiceIrregulars.js.map +1 -0
- package/build/languageProcessing/languages/de/config/internal/passiveVoiceRegex.js +72 -0
- package/build/languageProcessing/languages/de/config/internal/passiveVoiceRegex.js.map +1 -0
- package/build/languageProcessing/languages/de/config/keyphraseLength.js +11 -0
- package/build/languageProcessing/languages/de/config/keyphraseLength.js.map +1 -0
- package/build/languageProcessing/languages/de/config/stopWords.js +6 -0
- package/build/languageProcessing/languages/de/config/stopWords.js.map +1 -0
- package/build/languageProcessing/languages/de/config/syllables.json +460 -0
- package/build/languageProcessing/languages/de/config/transitionWords.js +7 -0
- package/build/languageProcessing/languages/de/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/de/config/twoPartTransitionWords.js +8 -0
- package/build/languageProcessing/languages/de/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/de/config/wordComplexity.js +5 -0
- package/build/languageProcessing/languages/de/config/wordComplexity.js.map +1 -0
- package/build/languageProcessing/languages/de/helpers/calculateFleschReadingScore.js +17 -0
- package/build/languageProcessing/languages/de/helpers/calculateFleschReadingScore.js.map +1 -0
- package/build/languageProcessing/languages/de/helpers/checkIfWordIsComplex.js +41 -0
- package/build/languageProcessing/languages/de/helpers/checkIfWordIsComplex.js.map +1 -0
- package/build/languageProcessing/languages/de/helpers/checkIfWordIsFunction.js +15 -0
- package/build/languageProcessing/languages/de/helpers/checkIfWordIsFunction.js.map +1 -0
- package/build/languageProcessing/languages/de/helpers/getClauses.js +27 -0
- package/build/languageProcessing/languages/de/helpers/getClauses.js.map +1 -0
- package/build/languageProcessing/languages/de/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/de/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/de/helpers/internal/SentenceTokenizer.js +31 -0
- package/build/languageProcessing/languages/de/helpers/internal/SentenceTokenizer.js.map +1 -0
- package/build/languageProcessing/languages/de/helpers/internal/detectAndStemRegularParticiple.js +112 -0
- package/build/languageProcessing/languages/de/helpers/internal/detectAndStemRegularParticiple.js.map +1 -0
- package/build/languageProcessing/languages/de/helpers/internal/determineStem.js +107 -0
- package/build/languageProcessing/languages/de/helpers/internal/determineStem.js.map +1 -0
- package/build/languageProcessing/languages/de/helpers/internal/getParticiples.js +32 -0
- package/build/languageProcessing/languages/de/helpers/internal/getParticiples.js.map +1 -0
- package/build/languageProcessing/languages/de/helpers/internal/stem.js +216 -0
- package/build/languageProcessing/languages/de/helpers/internal/stem.js.map +1 -0
- package/build/languageProcessing/languages/de/helpers/memoizedSentenceTokenizer.js +31 -0
- package/build/languageProcessing/languages/de/helpers/memoizedSentenceTokenizer.js.map +1 -0
- package/build/languageProcessing/languages/de/values/Clause.js +84 -0
- package/build/languageProcessing/languages/de/values/Clause.js.map +1 -0
- package/build/languageProcessing/languages/el/Researcher.js +47 -0
- package/build/languageProcessing/languages/el/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/el/config/firstWordExceptions.js +27 -0
- package/build/languageProcessing/languages/el/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/el/config/functionWords.js +41 -0
- package/build/languageProcessing/languages/el/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/el/config/internal/auxiliaries.js +6 -0
- package/build/languageProcessing/languages/el/config/internal/auxiliaries.js.map +1 -0
- package/build/languageProcessing/languages/el/config/internal/morphologicalPassiveSuffixes.js +2 -0
- package/build/languageProcessing/languages/el/config/internal/morphologicalPassiveSuffixes.js.map +1 -0
- package/build/languageProcessing/languages/el/config/internal/nonPassiveVerbStems.js +16 -0
- package/build/languageProcessing/languages/el/config/internal/nonPassiveVerbStems.js.map +1 -0
- package/build/languageProcessing/languages/el/config/stopWords.js +7 -0
- package/build/languageProcessing/languages/el/config/stopWords.js.map +1 -0
- package/build/languageProcessing/languages/el/config/transitionWords.js +12 -0
- package/build/languageProcessing/languages/el/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/el/config/twoPartTransitionWords.js +8 -0
- package/build/languageProcessing/languages/el/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/el/helpers/getClauses.js +27 -0
- package/build/languageProcessing/languages/el/helpers/getClauses.js.map +1 -0
- package/build/languageProcessing/languages/el/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/el/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/el/helpers/internal/getParticiples.js +18 -0
- package/build/languageProcessing/languages/el/helpers/internal/getParticiples.js.map +1 -0
- package/build/languageProcessing/languages/el/helpers/internal/stem.js +338 -0
- package/build/languageProcessing/languages/el/helpers/internal/stem.js.map +1 -0
- package/build/languageProcessing/languages/el/helpers/isPassiveSentence.js +36 -0
- package/build/languageProcessing/languages/el/helpers/isPassiveSentence.js.map +1 -0
- package/build/languageProcessing/languages/el/values/Clause.js +40 -0
- package/build/languageProcessing/languages/el/values/Clause.js.map +1 -0
- package/build/languageProcessing/languages/en/Researcher.js +47 -0
- package/build/languageProcessing/languages/en/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/en/config/abbreviations.js +10 -0
- package/build/languageProcessing/languages/en/config/abbreviations.js.map +1 -0
- package/build/languageProcessing/languages/en/config/firstWordExceptions.js +14 -0
- package/build/languageProcessing/languages/en/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/en/config/functionWords.js +103 -0
- package/build/languageProcessing/languages/en/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/en/config/internal/passiveVoiceAuxiliaries.js +9 -0
- package/build/languageProcessing/languages/en/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
- package/build/languageProcessing/languages/en/config/internal/passiveVoiceIrregulars.js +9 -0
- package/build/languageProcessing/languages/en/config/internal/passiveVoiceIrregulars.js.map +1 -0
- package/build/languageProcessing/languages/en/config/internal/passiveVoiceNonVerbEndingEd.js +7 -0
- package/build/languageProcessing/languages/en/config/internal/passiveVoiceNonVerbEndingEd.js.map +1 -0
- package/build/languageProcessing/languages/en/config/regularParticiplesRegex.js +6 -0
- package/build/languageProcessing/languages/en/config/regularParticiplesRegex.js.map +1 -0
- package/build/languageProcessing/languages/en/config/stopWords.js +6 -0
- package/build/languageProcessing/languages/en/config/stopWords.js.map +1 -0
- package/build/languageProcessing/languages/en/config/syllables.json +86 -0
- package/build/languageProcessing/languages/en/config/transitionWords.js +7 -0
- package/build/languageProcessing/languages/en/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/en/config/twoPartTransitionWords.js +8 -0
- package/build/languageProcessing/languages/en/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/en/config/wordComplexity.js +6 -0
- package/build/languageProcessing/languages/en/config/wordComplexity.js.map +1 -0
- package/build/languageProcessing/languages/en/helpers/calculateFleschReadingScore.js +17 -0
- package/build/languageProcessing/languages/en/helpers/calculateFleschReadingScore.js.map +1 -0
- package/build/languageProcessing/languages/en/helpers/checkIfWordIsComplex.js +43 -0
- package/build/languageProcessing/languages/en/helpers/checkIfWordIsComplex.js.map +1 -0
- package/build/languageProcessing/languages/en/helpers/getClauses.js +51 -0
- package/build/languageProcessing/languages/en/helpers/getClauses.js.map +1 -0
- package/build/languageProcessing/languages/en/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/en/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/en/helpers/internal/determineStem.js +150 -0
- package/build/languageProcessing/languages/en/helpers/internal/determineStem.js.map +1 -0
- package/build/languageProcessing/languages/en/helpers/internal/getAdjectiveStem.js +142 -0
- package/build/languageProcessing/languages/en/helpers/internal/getAdjectiveStem.js.map +1 -0
- package/build/languageProcessing/languages/en/helpers/internal/getParticiples.js +27 -0
- package/build/languageProcessing/languages/en/helpers/internal/getParticiples.js.map +1 -0
- package/build/languageProcessing/languages/en/helpers/internal/getVerbStem.js +218 -0
- package/build/languageProcessing/languages/en/helpers/internal/getVerbStem.js.map +1 -0
- package/build/languageProcessing/languages/en/values/Clause.js +61 -0
- package/build/languageProcessing/languages/en/values/Clause.js.map +1 -0
- package/build/languageProcessing/languages/es/Researcher.js +49 -0
- package/build/languageProcessing/languages/es/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/es/config/firstWordExceptions.js +14 -0
- package/build/languageProcessing/languages/es/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/es/config/functionWords.js +105 -0
- package/build/languageProcessing/languages/es/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/es/config/internal/passiveVoiceAuxiliaries.js +6 -0
- package/build/languageProcessing/languages/es/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
- package/build/languageProcessing/languages/es/config/internal/passiveVoiceParticiples.js +7 -0
- package/build/languageProcessing/languages/es/config/internal/passiveVoiceParticiples.js.map +1 -0
- package/build/languageProcessing/languages/es/config/sentenceLength.js +4 -0
- package/build/languageProcessing/languages/es/config/sentenceLength.js.map +1 -0
- package/build/languageProcessing/languages/es/config/stopWords.js +6 -0
- package/build/languageProcessing/languages/es/config/stopWords.js.map +1 -0
- package/build/languageProcessing/languages/es/config/syllables.json +176 -0
- package/build/languageProcessing/languages/es/config/transitionWords.js +7 -0
- package/build/languageProcessing/languages/es/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/es/config/twoPartTransitionWords.js +8 -0
- package/build/languageProcessing/languages/es/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/es/config/wordComplexity.js +5 -0
- package/build/languageProcessing/languages/es/config/wordComplexity.js.map +1 -0
- package/build/languageProcessing/languages/es/helpers/calculateFleschReadingScore.js +17 -0
- package/build/languageProcessing/languages/es/helpers/calculateFleschReadingScore.js.map +1 -0
- package/build/languageProcessing/languages/es/helpers/checkIfWordIsComplex.js +53 -0
- package/build/languageProcessing/languages/es/helpers/checkIfWordIsComplex.js.map +1 -0
- package/build/languageProcessing/languages/es/helpers/getClauses.js +31 -0
- package/build/languageProcessing/languages/es/helpers/getClauses.js.map +1 -0
- package/build/languageProcessing/languages/es/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/es/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/es/helpers/internal/checkVerbStemModifications.js +34 -0
- package/build/languageProcessing/languages/es/helpers/internal/checkVerbStemModifications.js.map +1 -0
- package/build/languageProcessing/languages/es/helpers/internal/getParticiples.js +37 -0
- package/build/languageProcessing/languages/es/helpers/internal/getParticiples.js.map +1 -0
- package/build/languageProcessing/languages/es/helpers/internal/stem.js +566 -0
- package/build/languageProcessing/languages/es/helpers/internal/stem.js.map +1 -0
- package/build/languageProcessing/languages/es/values/Clause.js +42 -0
- package/build/languageProcessing/languages/es/values/Clause.js.map +1 -0
- package/build/languageProcessing/languages/fa/Researcher.js +48 -0
- package/build/languageProcessing/languages/fa/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/fa/config/firstWordExceptions.js +12 -0
- package/build/languageProcessing/languages/fa/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/fa/config/functionWords.js +35 -0
- package/build/languageProcessing/languages/fa/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/fa/config/internal/participles.js +8 -0
- package/build/languageProcessing/languages/fa/config/internal/participles.js.map +1 -0
- package/build/languageProcessing/languages/fa/config/sentenceLength.js +4 -0
- package/build/languageProcessing/languages/fa/config/sentenceLength.js.map +1 -0
- package/build/languageProcessing/languages/fa/config/transitionWords.js +12 -0
- package/build/languageProcessing/languages/fa/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/fa/config/twoPartTransitionWords.js +8 -0
- package/build/languageProcessing/languages/fa/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/fa/helpers/createBasicWordForms.js +93 -0
- package/build/languageProcessing/languages/fa/helpers/createBasicWordForms.js.map +1 -0
- package/build/languageProcessing/languages/fa/helpers/getStemmer.js +16 -0
- package/build/languageProcessing/languages/fa/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/fa/helpers/isPassiveSentence.js +16 -0
- package/build/languageProcessing/languages/fa/helpers/isPassiveSentence.js.map +1 -0
- package/build/languageProcessing/languages/fr/Researcher.js +47 -0
- package/build/languageProcessing/languages/fr/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/fr/config/firstWordExceptions.js +14 -0
- package/build/languageProcessing/languages/fr/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/fr/config/functionWords.js +138 -0
- package/build/languageProcessing/languages/fr/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/fr/config/internal/exceptionsParticiplesActive.js +17 -0
- package/build/languageProcessing/languages/fr/config/internal/exceptionsParticiplesActive.js.map +1 -0
- package/build/languageProcessing/languages/fr/config/internal/passiveVoiceAuxiliaries.js +6 -0
- package/build/languageProcessing/languages/fr/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
- package/build/languageProcessing/languages/fr/config/internal/passiveVoiceIrregulars.js +22 -0
- package/build/languageProcessing/languages/fr/config/internal/passiveVoiceIrregulars.js.map +1 -0
- package/build/languageProcessing/languages/fr/config/stopWords.js +6 -0
- package/build/languageProcessing/languages/fr/config/stopWords.js.map +1 -0
- package/build/languageProcessing/languages/fr/config/syllables.json +1426 -0
- package/build/languageProcessing/languages/fr/config/transitionWords.js +7 -0
- package/build/languageProcessing/languages/fr/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/fr/config/twoPartTransitionWords.js +8 -0
- package/build/languageProcessing/languages/fr/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/fr/config/wordComplexity.js +5 -0
- package/build/languageProcessing/languages/fr/config/wordComplexity.js.map +1 -0
- package/build/languageProcessing/languages/fr/helpers/calculateFleschReadingScore.js +17 -0
- package/build/languageProcessing/languages/fr/helpers/calculateFleschReadingScore.js.map +1 -0
- package/build/languageProcessing/languages/fr/helpers/checkIfWordIsComplex.js +66 -0
- package/build/languageProcessing/languages/fr/helpers/checkIfWordIsComplex.js.map +1 -0
- package/build/languageProcessing/languages/fr/helpers/getClauses.js +35 -0
- package/build/languageProcessing/languages/fr/helpers/getClauses.js.map +1 -0
- package/build/languageProcessing/languages/fr/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/fr/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/fr/helpers/internal/getParticiples.js +66 -0
- package/build/languageProcessing/languages/fr/helpers/internal/getParticiples.js.map +1 -0
- package/build/languageProcessing/languages/fr/helpers/internal/stem.js +537 -0
- package/build/languageProcessing/languages/fr/helpers/internal/stem.js.map +1 -0
- package/build/languageProcessing/languages/fr/values/Clause.js +84 -0
- package/build/languageProcessing/languages/fr/values/Clause.js.map +1 -0
- package/build/languageProcessing/languages/he/Researcher.js +51 -0
- package/build/languageProcessing/languages/he/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/he/config/firstWordExceptions.js +12 -0
- package/build/languageProcessing/languages/he/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/he/config/functionWords.js +497 -0
- package/build/languageProcessing/languages/he/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/he/config/internal/regularRootsHufal.js +7 -0
- package/build/languageProcessing/languages/he/config/internal/regularRootsHufal.js.map +1 -0
- package/build/languageProcessing/languages/he/config/internal/regularRootsNifal.js +7 -0
- package/build/languageProcessing/languages/he/config/internal/regularRootsNifal.js.map +1 -0
- package/build/languageProcessing/languages/he/config/internal/regularRootsPual.js +7 -0
- package/build/languageProcessing/languages/he/config/internal/regularRootsPual.js.map +1 -0
- package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsHufal.js +9 -0
- package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsHufal.js.map +1 -0
- package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsNifal.js +9 -0
- package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsNifal.js.map +1 -0
- package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsPual.js +9 -0
- package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsPual.js.map +1 -0
- package/build/languageProcessing/languages/he/config/prefixedFunctionWords.js +3 -0
- package/build/languageProcessing/languages/he/config/prefixedFunctionWords.js.map +1 -0
- package/build/languageProcessing/languages/he/config/sentenceLength.js +4 -0
- package/build/languageProcessing/languages/he/config/sentenceLength.js.map +1 -0
- package/build/languageProcessing/languages/he/config/transitionWords.js +7 -0
- package/build/languageProcessing/languages/he/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/he/config/twoPartTransitionWords.js +8 -0
- package/build/languageProcessing/languages/he/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/he/helpers/createBasicWordForms.js +35 -0
- package/build/languageProcessing/languages/he/helpers/createBasicWordForms.js.map +1 -0
- package/build/languageProcessing/languages/he/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/he/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/he/helpers/internal/stem.js +53 -0
- package/build/languageProcessing/languages/he/helpers/internal/stem.js.map +1 -0
- package/build/languageProcessing/languages/he/helpers/isPassiveSentence.js +116 -0
- package/build/languageProcessing/languages/he/helpers/isPassiveSentence.js.map +1 -0
- package/build/languageProcessing/languages/he/helpers/stem.js +53 -0
- package/build/languageProcessing/languages/he/helpers/stem.js.map +1 -0
- package/build/languageProcessing/languages/hu/Researcher.js +49 -0
- package/build/languageProcessing/languages/hu/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/hu/config/firstWordExceptions.js +26 -0
- package/build/languageProcessing/languages/hu/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/hu/config/functionWords.js +46 -0
- package/build/languageProcessing/languages/hu/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/hu/config/internal/auxiliaries.js +14 -0
- package/build/languageProcessing/languages/hu/config/internal/auxiliaries.js.map +1 -0
- package/build/languageProcessing/languages/hu/config/internal/morphologicalPassiveAffixes.js +6 -0
- package/build/languageProcessing/languages/hu/config/internal/morphologicalPassiveAffixes.js.map +1 -0
- package/build/languageProcessing/languages/hu/config/internal/nonPassivesInVaAndVe.js +20 -0
- package/build/languageProcessing/languages/hu/config/internal/nonPassivesInVaAndVe.js.map +1 -0
- package/build/languageProcessing/languages/hu/config/internal/odikVerbs.js +19 -0
- package/build/languageProcessing/languages/hu/config/internal/odikVerbs.js.map +1 -0
- package/build/languageProcessing/languages/hu/config/internal/participles.js +20 -0
- package/build/languageProcessing/languages/hu/config/internal/participles.js.map +1 -0
- package/build/languageProcessing/languages/hu/config/stopWords.js +24 -0
- package/build/languageProcessing/languages/hu/config/stopWords.js.map +1 -0
- package/build/languageProcessing/languages/hu/config/transitionWords.js +7 -0
- package/build/languageProcessing/languages/hu/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/hu/config/twoPartTransitionWords.js +8 -0
- package/build/languageProcessing/languages/hu/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/hu/helpers/getClauses.js +27 -0
- package/build/languageProcessing/languages/hu/helpers/getClauses.js.map +1 -0
- package/build/languageProcessing/languages/hu/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/hu/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/hu/helpers/internal/getParticiples.js +19 -0
- package/build/languageProcessing/languages/hu/helpers/internal/getParticiples.js.map +1 -0
- package/build/languageProcessing/languages/hu/helpers/internal/stem.js +384 -0
- package/build/languageProcessing/languages/hu/helpers/internal/stem.js.map +1 -0
- package/build/languageProcessing/languages/hu/helpers/isPassiveSentence.js +47 -0
- package/build/languageProcessing/languages/hu/helpers/isPassiveSentence.js.map +1 -0
- package/build/languageProcessing/languages/hu/values/Clause.js +41 -0
- package/build/languageProcessing/languages/hu/values/Clause.js.map +1 -0
- package/build/languageProcessing/languages/id/Researcher.js +47 -0
- package/build/languageProcessing/languages/id/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/id/config/firstWordExceptions.js +12 -0
- package/build/languageProcessing/languages/id/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/id/config/functionWords.js +101 -0
- package/build/languageProcessing/languages/id/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/id/config/internal/nonPassiveVerbsStartingDi.js +7 -0
- package/build/languageProcessing/languages/id/config/internal/nonPassiveVerbsStartingDi.js.map +1 -0
- package/build/languageProcessing/languages/id/config/transitionWords.js +24 -0
- package/build/languageProcessing/languages/id/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/id/config/twoPartTransitionWords.js +9 -0
- package/build/languageProcessing/languages/id/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/id/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/id/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/id/helpers/internal/stem.js +389 -0
- package/build/languageProcessing/languages/id/helpers/internal/stem.js.map +1 -0
- package/build/languageProcessing/languages/id/helpers/internal/stemHelpers.js +78 -0
- package/build/languageProcessing/languages/id/helpers/internal/stemHelpers.js.map +1 -0
- package/build/languageProcessing/languages/id/helpers/isPassiveSentence.js +40 -0
- package/build/languageProcessing/languages/id/helpers/isPassiveSentence.js.map +1 -0
- package/build/languageProcessing/languages/id/helpers/splitIntoTokensCustom.js +47 -0
- package/build/languageProcessing/languages/id/helpers/splitIntoTokensCustom.js.map +1 -0
- package/build/languageProcessing/languages/it/Researcher.js +49 -0
- package/build/languageProcessing/languages/it/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/it/config/firstWordExceptions.js +14 -0
- package/build/languageProcessing/languages/it/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/it/config/functionWords.js +135 -0
- package/build/languageProcessing/languages/it/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/it/config/internal/passiveVoiceAuxiliaries.js +6 -0
- package/build/languageProcessing/languages/it/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
- package/build/languageProcessing/languages/it/config/internal/passiveVoiceParticiples.js +7 -0
- package/build/languageProcessing/languages/it/config/internal/passiveVoiceParticiples.js.map +1 -0
- package/build/languageProcessing/languages/it/config/sentenceLength.js +4 -0
- package/build/languageProcessing/languages/it/config/sentenceLength.js.map +1 -0
- package/build/languageProcessing/languages/it/config/stopWords.js +6 -0
- package/build/languageProcessing/languages/it/config/stopWords.js.map +1 -0
- package/build/languageProcessing/languages/it/config/syllables.json +573 -0
- package/build/languageProcessing/languages/it/config/transitionWords.js +7 -0
- package/build/languageProcessing/languages/it/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/it/config/twoPartTransitionWords.js +6 -0
- package/build/languageProcessing/languages/it/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/it/helpers/calculateFleschReadingScore.js +17 -0
- package/build/languageProcessing/languages/it/helpers/calculateFleschReadingScore.js.map +1 -0
- package/build/languageProcessing/languages/it/helpers/getClauses.js +33 -0
- package/build/languageProcessing/languages/it/helpers/getClauses.js.map +1 -0
- package/build/languageProcessing/languages/it/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/it/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/it/helpers/internal/getParticiples.js +36 -0
- package/build/languageProcessing/languages/it/helpers/internal/getParticiples.js.map +1 -0
- package/build/languageProcessing/languages/it/helpers/internal/stem.js +402 -0
- package/build/languageProcessing/languages/it/helpers/internal/stem.js.map +1 -0
- package/build/languageProcessing/languages/it/values/Clause.js +44 -0
- package/build/languageProcessing/languages/it/values/Clause.js.map +1 -0
- package/build/languageProcessing/languages/ja/Researcher.js +86 -0
- package/build/languageProcessing/languages/ja/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/ja/config/assessmentApplicabilityCharacterCount.js +5 -0
- package/build/languageProcessing/languages/ja/config/assessmentApplicabilityCharacterCount.js.map +1 -0
- package/build/languageProcessing/languages/ja/config/firstWordExceptions.js +8 -0
- package/build/languageProcessing/languages/ja/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/ja/config/functionWords.js +2 -0
- package/build/languageProcessing/languages/ja/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/ja/config/keyphraseLength.js +17 -0
- package/build/languageProcessing/languages/ja/config/keyphraseLength.js.map +1 -0
- package/build/languageProcessing/languages/ja/config/metaDescriptionLength.js +5 -0
- package/build/languageProcessing/languages/ja/config/metaDescriptionLength.js.map +1 -0
- package/build/languageProcessing/languages/ja/config/paragraphLength.js +11 -0
- package/build/languageProcessing/languages/ja/config/paragraphLength.js.map +1 -0
- package/build/languageProcessing/languages/ja/config/sentenceLength.js +5 -0
- package/build/languageProcessing/languages/ja/config/sentenceLength.js.map +1 -0
- package/build/languageProcessing/languages/ja/config/subheadingsTooLong.js +19 -0
- package/build/languageProcessing/languages/ja/config/subheadingsTooLong.js.map +1 -0
- package/build/languageProcessing/languages/ja/config/textLength.js +48 -0
- package/build/languageProcessing/languages/ja/config/textLength.js.map +1 -0
- package/build/languageProcessing/languages/ja/config/topicLength.js +6 -0
- package/build/languageProcessing/languages/ja/config/topicLength.js.map +1 -0
- package/build/languageProcessing/languages/ja/config/transitionWords.js +4 -0
- package/build/languageProcessing/languages/ja/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/ja/customResearches/findKeyphraseInSEOTitle.js +96 -0
- package/build/languageProcessing/languages/ja/customResearches/findKeyphraseInSEOTitle.js.map +1 -0
- package/build/languageProcessing/languages/ja/customResearches/getKeyphraseLength.js +19 -0
- package/build/languageProcessing/languages/ja/customResearches/getKeyphraseLength.js.map +1 -0
- package/build/languageProcessing/languages/ja/customResearches/getWordForms.js +51 -0
- package/build/languageProcessing/languages/ja/customResearches/getWordForms.js.map +1 -0
- package/build/languageProcessing/languages/ja/customResearches/textLength.js +25 -0
- package/build/languageProcessing/languages/ja/customResearches/textLength.js.map +1 -0
- package/build/languageProcessing/languages/ja/helpers/countCharacters.js +21 -0
- package/build/languageProcessing/languages/ja/helpers/countCharacters.js.map +1 -0
- package/build/languageProcessing/languages/ja/helpers/customGetStemmer.js +22 -0
- package/build/languageProcessing/languages/ja/helpers/customGetStemmer.js.map +1 -0
- package/build/languageProcessing/languages/ja/helpers/getContentWords.js +21 -0
- package/build/languageProcessing/languages/ja/helpers/getContentWords.js.map +1 -0
- package/build/languageProcessing/languages/ja/helpers/getWords.js +31 -0
- package/build/languageProcessing/languages/ja/helpers/getWords.js.map +1 -0
- package/build/languageProcessing/languages/ja/helpers/internal/SentenceTokenizer.js +92 -0
- package/build/languageProcessing/languages/ja/helpers/internal/SentenceTokenizer.js.map +1 -0
- package/build/languageProcessing/languages/ja/helpers/internal/createWordForms.js +65 -0
- package/build/languageProcessing/languages/ja/helpers/internal/createWordForms.js.map +1 -0
- package/build/languageProcessing/languages/ja/helpers/internal/determineStem.js +17 -0
- package/build/languageProcessing/languages/ja/helpers/internal/determineStem.js.map +1 -0
- package/build/languageProcessing/languages/ja/helpers/matchTextWithWord.js +52 -0
- package/build/languageProcessing/languages/ja/helpers/matchTextWithWord.js.map +1 -0
- package/build/languageProcessing/languages/ja/helpers/matchTransitionWords.js +23 -0
- package/build/languageProcessing/languages/ja/helpers/matchTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/ja/helpers/memoizedSentenceTokenizer.js +31 -0
- package/build/languageProcessing/languages/ja/helpers/memoizedSentenceTokenizer.js.map +1 -0
- package/build/languageProcessing/languages/ja/helpers/splitIntoTokensCustom.js +21 -0
- package/build/languageProcessing/languages/ja/helpers/splitIntoTokensCustom.js.map +1 -0
- package/build/languageProcessing/languages/ja/helpers/wordsCharacterCount.js +13 -0
- package/build/languageProcessing/languages/ja/helpers/wordsCharacterCount.js.map +1 -0
- package/build/languageProcessing/languages/nb/Researcher.js +46 -0
- package/build/languageProcessing/languages/nb/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/nb/config/firstWordExceptions.js +12 -0
- package/build/languageProcessing/languages/nb/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/nb/config/functionWords.js +48 -0
- package/build/languageProcessing/languages/nb/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/nb/config/internal/participles.js +7 -0
- package/build/languageProcessing/languages/nb/config/internal/participles.js.map +1 -0
- package/build/languageProcessing/languages/nb/config/internal/passiveVoiceAuxiliaries.js +6 -0
- package/build/languageProcessing/languages/nb/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
- package/build/languageProcessing/languages/nb/config/stopWords.js +7 -0
- package/build/languageProcessing/languages/nb/config/stopWords.js.map +1 -0
- package/build/languageProcessing/languages/nb/config/transitionWords.js +7 -0
- package/build/languageProcessing/languages/nb/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/nb/config/twoPartTransitionWords.js +8 -0
- package/build/languageProcessing/languages/nb/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/nb/helpers/getClauses.js +30 -0
- package/build/languageProcessing/languages/nb/helpers/getClauses.js.map +1 -0
- package/build/languageProcessing/languages/nb/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/nb/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/nb/helpers/internal/getParticiples.js +25 -0
- package/build/languageProcessing/languages/nb/helpers/internal/getParticiples.js.map +1 -0
- package/build/languageProcessing/languages/nb/helpers/internal/stem.js +129 -0
- package/build/languageProcessing/languages/nb/helpers/internal/stem.js.map +1 -0
- package/build/languageProcessing/languages/nb/values/Clause.js +43 -0
- package/build/languageProcessing/languages/nb/values/Clause.js.map +1 -0
- package/build/languageProcessing/languages/nl/Researcher.js +49 -0
- package/build/languageProcessing/languages/nl/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/nl/config/firstWordExceptions.js +14 -0
- package/build/languageProcessing/languages/nl/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/nl/config/functionWords.js +96 -0
- package/build/languageProcessing/languages/nl/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/nl/config/internal/nonParticiples.js +6 -0
- package/build/languageProcessing/languages/nl/config/internal/nonParticiples.js.map +1 -0
- package/build/languageProcessing/languages/nl/config/internal/passiveVoiceAuxiliaries.js +6 -0
- package/build/languageProcessing/languages/nl/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
- package/build/languageProcessing/languages/nl/config/internal/passiveVoiceIrregulars.js +7 -0
- package/build/languageProcessing/languages/nl/config/internal/passiveVoiceIrregulars.js.map +1 -0
- package/build/languageProcessing/languages/nl/config/keyphraseLength.js +11 -0
- package/build/languageProcessing/languages/nl/config/keyphraseLength.js.map +1 -0
- package/build/languageProcessing/languages/nl/config/stopWords.js +6 -0
- package/build/languageProcessing/languages/nl/config/stopWords.js.map +1 -0
- package/build/languageProcessing/languages/nl/config/syllables.json +343 -0
- package/build/languageProcessing/languages/nl/config/transitionWords.js +5 -0
- package/build/languageProcessing/languages/nl/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/nl/config/twoPartTransitionWords.js +6 -0
- package/build/languageProcessing/languages/nl/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/nl/helpers/calculateFleschReadingScore.js +17 -0
- package/build/languageProcessing/languages/nl/helpers/calculateFleschReadingScore.js.map +1 -0
- package/build/languageProcessing/languages/nl/helpers/getClauses.js +27 -0
- package/build/languageProcessing/languages/nl/helpers/getClauses.js.map +1 -0
- package/build/languageProcessing/languages/nl/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/nl/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/nl/helpers/internal/checkExceptionsWithFullForms.js +118 -0
- package/build/languageProcessing/languages/nl/helpers/internal/checkExceptionsWithFullForms.js.map +1 -0
- package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemRegularParticiple.js +254 -0
- package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemRegularParticiple.js.map +1 -0
- package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemSuffixes.js +152 -0
- package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemSuffixes.js.map +1 -0
- package/build/languageProcessing/languages/nl/helpers/internal/determineStem.js +114 -0
- package/build/languageProcessing/languages/nl/helpers/internal/determineStem.js.map +1 -0
- package/build/languageProcessing/languages/nl/helpers/internal/getParticiples.js +21 -0
- package/build/languageProcessing/languages/nl/helpers/internal/getParticiples.js.map +1 -0
- package/build/languageProcessing/languages/nl/helpers/internal/getStemWordsWithTAndDEnding.js +147 -0
- package/build/languageProcessing/languages/nl/helpers/internal/getStemWordsWithTAndDEnding.js.map +1 -0
- package/build/languageProcessing/languages/nl/helpers/internal/stem.js +125 -0
- package/build/languageProcessing/languages/nl/helpers/internal/stem.js.map +1 -0
- package/build/languageProcessing/languages/nl/helpers/internal/stemModificationHelpers.js +87 -0
- package/build/languageProcessing/languages/nl/helpers/internal/stemModificationHelpers.js.map +1 -0
- package/build/languageProcessing/languages/nl/helpers/internal/stemTOrDFromEndOfWord.js +53 -0
- package/build/languageProcessing/languages/nl/helpers/internal/stemTOrDFromEndOfWord.js.map +1 -0
- package/build/languageProcessing/languages/nl/values/Clause.js +57 -0
- package/build/languageProcessing/languages/nl/values/Clause.js.map +1 -0
- package/build/languageProcessing/languages/pl/Researcher.js +48 -0
- package/build/languageProcessing/languages/pl/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/pl/config/firstWordExceptions.js +10 -0
- package/build/languageProcessing/languages/pl/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/pl/config/functionWords.js +71 -0
- package/build/languageProcessing/languages/pl/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/pl/config/internal/auxiliaries.js +6 -0
- package/build/languageProcessing/languages/pl/config/internal/auxiliaries.js.map +1 -0
- package/build/languageProcessing/languages/pl/config/internal/participles.js +7 -0
- package/build/languageProcessing/languages/pl/config/internal/participles.js.map +1 -0
- package/build/languageProcessing/languages/pl/config/sentenceLength.js +11 -0
- package/build/languageProcessing/languages/pl/config/sentenceLength.js.map +1 -0
- package/build/languageProcessing/languages/pl/config/stopWords.js +6 -0
- package/build/languageProcessing/languages/pl/config/stopWords.js.map +1 -0
- package/build/languageProcessing/languages/pl/config/transitionWords.js +7 -0
- package/build/languageProcessing/languages/pl/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/pl/config/twoPartTransitionWords.js +8 -0
- package/build/languageProcessing/languages/pl/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/pl/helpers/getClauses.js +27 -0
- package/build/languageProcessing/languages/pl/helpers/getClauses.js.map +1 -0
- package/build/languageProcessing/languages/pl/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/pl/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/pl/helpers/internal/getParticiples.js +19 -0
- package/build/languageProcessing/languages/pl/helpers/internal/getParticiples.js.map +1 -0
- package/build/languageProcessing/languages/pl/helpers/internal/stem.js +152 -0
- package/build/languageProcessing/languages/pl/helpers/internal/stem.js.map +1 -0
- package/build/languageProcessing/languages/pl/values/Clause.js +45 -0
- package/build/languageProcessing/languages/pl/values/Clause.js.map +1 -0
- package/build/languageProcessing/languages/pt/Researcher.js +49 -0
- package/build/languageProcessing/languages/pt/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/pt/config/firstWordExceptions.js +14 -0
- package/build/languageProcessing/languages/pt/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/pt/config/functionWords.js +92 -0
- package/build/languageProcessing/languages/pt/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/pt/config/internal/passiveVoiceAuxiliaries.js +6 -0
- package/build/languageProcessing/languages/pt/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
- package/build/languageProcessing/languages/pt/config/internal/passiveVoiceParticiples.js +7 -0
- package/build/languageProcessing/languages/pt/config/internal/passiveVoiceParticiples.js.map +1 -0
- package/build/languageProcessing/languages/pt/config/sentenceLength.js +4 -0
- package/build/languageProcessing/languages/pt/config/sentenceLength.js.map +1 -0
- package/build/languageProcessing/languages/pt/config/stopWords.js +6 -0
- package/build/languageProcessing/languages/pt/config/stopWords.js.map +1 -0
- package/build/languageProcessing/languages/pt/config/syllables.json +38 -0
- package/build/languageProcessing/languages/pt/config/transitionWords.js +5 -0
- package/build/languageProcessing/languages/pt/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/pt/config/twoPartTransitionWords.js +6 -0
- package/build/languageProcessing/languages/pt/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/pt/helpers/calculateFleschReadingScore.js +17 -0
- package/build/languageProcessing/languages/pt/helpers/calculateFleschReadingScore.js.map +1 -0
- package/build/languageProcessing/languages/pt/helpers/getClauses.js +31 -0
- package/build/languageProcessing/languages/pt/helpers/getClauses.js.map +1 -0
- package/build/languageProcessing/languages/pt/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/pt/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/pt/helpers/internal/getParticiples.js +37 -0
- package/build/languageProcessing/languages/pt/helpers/internal/getParticiples.js.map +1 -0
- package/build/languageProcessing/languages/pt/helpers/internal/stem.js +277 -0
- package/build/languageProcessing/languages/pt/helpers/internal/stem.js.map +1 -0
- package/build/languageProcessing/languages/pt/values/Clause.js +43 -0
- package/build/languageProcessing/languages/pt/values/Clause.js.map +1 -0
- package/build/languageProcessing/languages/ru/Researcher.js +49 -0
- package/build/languageProcessing/languages/ru/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/ru/config/firstWordExceptions.js +10 -0
- package/build/languageProcessing/languages/ru/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/ru/config/fleschReadingEaseScores.js +21 -0
- package/build/languageProcessing/languages/ru/config/fleschReadingEaseScores.js.map +1 -0
- package/build/languageProcessing/languages/ru/config/functionWords.js +85 -0
- package/build/languageProcessing/languages/ru/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/ru/config/internal/participlesShortenedList.js +21 -0
- package/build/languageProcessing/languages/ru/config/internal/participlesShortenedList.js.map +1 -0
- package/build/languageProcessing/languages/ru/config/internal/passiveVoiceParticiples.js +18 -0
- package/build/languageProcessing/languages/ru/config/internal/passiveVoiceParticiples.js.map +1 -0
- package/build/languageProcessing/languages/ru/config/sentenceLength.js +4 -0
- package/build/languageProcessing/languages/ru/config/sentenceLength.js.map +1 -0
- package/build/languageProcessing/languages/ru/config/syllables.json +19 -0
- package/build/languageProcessing/languages/ru/config/transitionWords.js +7 -0
- package/build/languageProcessing/languages/ru/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/ru/config/twoPartTransitionWords.js +8 -0
- package/build/languageProcessing/languages/ru/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/ru/helpers/calculateFleschReadingScore.js +17 -0
- package/build/languageProcessing/languages/ru/helpers/calculateFleschReadingScore.js.map +1 -0
- package/build/languageProcessing/languages/ru/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/ru/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/ru/helpers/internal/stem.js +265 -0
- package/build/languageProcessing/languages/ru/helpers/internal/stem.js.map +1 -0
- package/build/languageProcessing/languages/ru/helpers/isPassiveSentence.js +16 -0
- package/build/languageProcessing/languages/ru/helpers/isPassiveSentence.js.map +1 -0
- package/build/languageProcessing/languages/sk/Researcher.js +47 -0
- package/build/languageProcessing/languages/sk/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/sk/config/firstWordExceptions.js +12 -0
- package/build/languageProcessing/languages/sk/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/sk/config/functionWords.js +12 -0
- package/build/languageProcessing/languages/sk/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/sk/config/internal/nonPassives.js +8 -0
- package/build/languageProcessing/languages/sk/config/internal/nonPassives.js.map +1 -0
- package/build/languageProcessing/languages/sk/config/internal/passiveVoiceAuxiliaries.js +4 -0
- package/build/languageProcessing/languages/sk/config/internal/passiveVoiceAuxiliaries.js.map +1 -0
- package/build/languageProcessing/languages/sk/config/stopWords.js +7 -0
- package/build/languageProcessing/languages/sk/config/stopWords.js.map +1 -0
- package/build/languageProcessing/languages/sk/config/transitionWords.js +7 -0
- package/build/languageProcessing/languages/sk/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/sk/config/twoPartTransitionWords.js +8 -0
- package/build/languageProcessing/languages/sk/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/sk/helpers/getClauses.js +28 -0
- package/build/languageProcessing/languages/sk/helpers/getClauses.js.map +1 -0
- package/build/languageProcessing/languages/sk/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/sk/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/sk/helpers/internal/getParticiples.js +18 -0
- package/build/languageProcessing/languages/sk/helpers/internal/getParticiples.js.map +1 -0
- package/build/languageProcessing/languages/sk/helpers/internal/stem.js +316 -0
- package/build/languageProcessing/languages/sk/helpers/internal/stem.js.map +1 -0
- package/build/languageProcessing/languages/sk/values/Clause.js +41 -0
- package/build/languageProcessing/languages/sk/values/Clause.js.map +1 -0
- package/build/languageProcessing/languages/sv/Researcher.js +46 -0
- package/build/languageProcessing/languages/sv/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/sv/config/firstWordExceptions.js +15 -0
- package/build/languageProcessing/languages/sv/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/sv/config/functionWords.js +68 -0
- package/build/languageProcessing/languages/sv/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/sv/config/internal/passiveVerbs.js +7 -0
- package/build/languageProcessing/languages/sv/config/internal/passiveVerbs.js.map +1 -0
- package/build/languageProcessing/languages/sv/config/keyphraseLength.js +11 -0
- package/build/languageProcessing/languages/sv/config/keyphraseLength.js.map +1 -0
- package/build/languageProcessing/languages/sv/config/transitionWords.js +7 -0
- package/build/languageProcessing/languages/sv/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/sv/config/twoPartTransitionWords.js +8 -0
- package/build/languageProcessing/languages/sv/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/sv/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/sv/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/sv/helpers/internal/stem.js +153 -0
- package/build/languageProcessing/languages/sv/helpers/internal/stem.js.map +1 -0
- package/build/languageProcessing/languages/sv/helpers/isPassiveSentence.js +16 -0
- package/build/languageProcessing/languages/sv/helpers/isPassiveSentence.js.map +1 -0
- package/build/languageProcessing/languages/tr/Researcher.js +44 -0
- package/build/languageProcessing/languages/tr/Researcher.js.map +1 -0
- package/build/languageProcessing/languages/tr/config/firstWordExceptions.js +12 -0
- package/build/languageProcessing/languages/tr/config/firstWordExceptions.js.map +1 -0
- package/build/languageProcessing/languages/tr/config/functionWords.js +45 -0
- package/build/languageProcessing/languages/tr/config/functionWords.js.map +1 -0
- package/build/languageProcessing/languages/tr/config/internal/nonPassiveExceptions.js +8 -0
- package/build/languageProcessing/languages/tr/config/internal/nonPassiveExceptions.js.map +1 -0
- package/build/languageProcessing/languages/tr/config/internal/passiveEndings.js +7 -0
- package/build/languageProcessing/languages/tr/config/internal/passiveEndings.js.map +1 -0
- package/build/languageProcessing/languages/tr/config/sentenceLength.js +8 -0
- package/build/languageProcessing/languages/tr/config/sentenceLength.js.map +1 -0
- package/build/languageProcessing/languages/tr/config/transitionWords.js +7 -0
- package/build/languageProcessing/languages/tr/config/transitionWords.js.map +1 -0
- package/build/languageProcessing/languages/tr/config/twoPartTransitionWords.js +8 -0
- package/build/languageProcessing/languages/tr/config/twoPartTransitionWords.js.map +1 -0
- package/build/languageProcessing/languages/tr/helpers/getStemmer.js +22 -0
- package/build/languageProcessing/languages/tr/helpers/getStemmer.js.map +1 -0
- package/build/languageProcessing/languages/tr/helpers/internal/stem.js +19 -0
- package/build/languageProcessing/languages/tr/helpers/internal/stem.js.map +1 -0
- package/build/languageProcessing/languages/tr/helpers/isPassiveSentence.js +40 -0
- package/build/languageProcessing/languages/tr/helpers/isPassiveSentence.js.map +1 -0
- package/build/languageProcessing/researches/altTagCount.js +66 -0
- package/build/languageProcessing/researches/altTagCount.js.map +1 -0
- package/build/languageProcessing/researches/checkRelatedKeywords.js +71 -0
- package/build/languageProcessing/researches/checkRelatedKeywords.js.map +1 -0
- package/build/languageProcessing/researches/countSentencesFromText.js +20 -0
- package/build/languageProcessing/researches/countSentencesFromText.js.map +1 -0
- package/build/languageProcessing/researches/findKeyphraseInSEOTitle.js +250 -0
- package/build/languageProcessing/researches/findKeyphraseInSEOTitle.js.map +1 -0
- package/build/languageProcessing/researches/findKeywordInFirstParagraph.js +74 -0
- package/build/languageProcessing/researches/findKeywordInFirstParagraph.js.map +1 -0
- package/build/languageProcessing/researches/findTransitionWords.js +112 -0
- package/build/languageProcessing/researches/findTransitionWords.js.map +1 -0
- package/build/languageProcessing/researches/functionWordsInKeyphrase.js +42 -0
- package/build/languageProcessing/researches/functionWordsInKeyphrase.js.map +1 -0
- package/build/languageProcessing/researches/getAnchorsWithKeyphrase.js +215 -0
- package/build/languageProcessing/researches/getAnchorsWithKeyphrase.js.map +1 -0
- package/build/languageProcessing/researches/getFleschReadingScore.js +145 -0
- package/build/languageProcessing/researches/getFleschReadingScore.js.map +1 -0
- package/build/languageProcessing/researches/getKeywordDensity.js +42 -0
- package/build/languageProcessing/researches/getKeywordDensity.js.map +1 -0
- package/build/languageProcessing/researches/getLinkStatistics.js +50 -0
- package/build/languageProcessing/researches/getLinkStatistics.js.map +1 -0
- package/build/languageProcessing/researches/getLinks.js +17 -0
- package/build/languageProcessing/researches/getLinks.js.map +1 -0
- package/build/languageProcessing/researches/getLongCenterAlignedTexts.js +36 -0
- package/build/languageProcessing/researches/getLongCenterAlignedTexts.js.map +1 -0
- package/build/languageProcessing/researches/getParagraphLength.js +43 -0
- package/build/languageProcessing/researches/getParagraphLength.js.map +1 -0
- package/build/languageProcessing/researches/getParagraphs.js +18 -0
- package/build/languageProcessing/researches/getParagraphs.js.map +1 -0
- package/build/languageProcessing/researches/getPassiveVoiceResult.js +118 -0
- package/build/languageProcessing/researches/getPassiveVoiceResult.js.map +1 -0
- package/build/languageProcessing/researches/getProminentWordsForInsights.js +39 -0
- package/build/languageProcessing/researches/getProminentWordsForInsights.js.map +1 -0
- package/build/languageProcessing/researches/getProminentWordsForInternalLinking.js +97 -0
- package/build/languageProcessing/researches/getProminentWordsForInternalLinking.js.map +1 -0
- package/build/languageProcessing/researches/getSentenceBeginnings.js +116 -0
- package/build/languageProcessing/researches/getSentenceBeginnings.js.map +1 -0
- package/build/languageProcessing/researches/getSubheadingTextLengths.js +54 -0
- package/build/languageProcessing/researches/getSubheadingTextLengths.js.map +1 -0
- package/build/languageProcessing/researches/getWordForms.js +177 -0
- package/build/languageProcessing/researches/getWordForms.js.map +1 -0
- package/build/languageProcessing/researches/h1s.js +11 -0
- package/build/languageProcessing/researches/h1s.js.map +1 -0
- package/build/languageProcessing/researches/imageCount.js +16 -0
- package/build/languageProcessing/researches/imageCount.js.map +1 -0
- package/build/languageProcessing/researches/index.js +5 -0
- package/build/languageProcessing/researches/index.js.map +1 -0
- package/build/languageProcessing/researches/keyphraseDistribution.js +223 -0
- package/build/languageProcessing/researches/keyphraseDistribution.js.map +1 -0
- package/build/languageProcessing/researches/keyphraseLength.js +17 -0
- package/build/languageProcessing/researches/keyphraseLength.js.map +1 -0
- package/build/languageProcessing/researches/keywordCount.js +127 -0
- package/build/languageProcessing/researches/keywordCount.js.map +1 -0
- package/build/languageProcessing/researches/keywordCountInUrl.js +50 -0
- package/build/languageProcessing/researches/keywordCountInUrl.js.map +1 -0
- package/build/languageProcessing/researches/matchKeywordInSubheadings.js +62 -0
- package/build/languageProcessing/researches/matchKeywordInSubheadings.js.map +1 -0
- package/build/languageProcessing/researches/metaDescriptionKeyword.js +72 -0
- package/build/languageProcessing/researches/metaDescriptionKeyword.js.map +1 -0
- package/build/languageProcessing/researches/metaDescriptionLength.js +13 -0
- package/build/languageProcessing/researches/metaDescriptionLength.js.map +1 -0
- package/build/languageProcessing/researches/pageTitleWidth.js +12 -0
- package/build/languageProcessing/researches/pageTitleWidth.js.map +1 -0
- package/build/languageProcessing/researches/readingTime.js +78 -0
- package/build/languageProcessing/researches/readingTime.js.map +1 -0
- package/build/languageProcessing/researches/sentences.js +20 -0
- package/build/languageProcessing/researches/sentences.js.map +1 -0
- package/build/languageProcessing/researches/videoCount.js +33 -0
- package/build/languageProcessing/researches/videoCount.js.map +1 -0
- package/build/languageProcessing/researches/wordComplexity.js +122 -0
- package/build/languageProcessing/researches/wordComplexity.js.map +1 -0
- package/build/languageProcessing/researches/wordCountInText.js +30 -0
- package/build/languageProcessing/researches/wordCountInText.js.map +1 -0
- package/build/languageProcessing/values/Clause.js +107 -0
- package/build/languageProcessing/values/Clause.js.map +1 -0
- package/build/languageProcessing/values/ProminentWord.js +95 -0
- package/build/languageProcessing/values/ProminentWord.js.map +1 -0
- package/build/languageProcessing/values/Sentence.js +110 -0
- package/build/languageProcessing/values/Sentence.js.map +1 -0
- package/build/languageProcessing/values/index.js +5 -0
- package/build/languageProcessing/values/index.js.map +1 -0
- package/build/markers/addMark.js +10 -0
- package/build/markers/addMark.js.map +1 -0
- package/build/markers/addMarkSingleWord.js +32 -0
- package/build/markers/addMarkSingleWord.js.map +1 -0
- package/build/markers/index.js +4 -0
- package/build/markers/index.js.map +1 -0
- package/build/markers/removeDuplicateMarks.js +26 -0
- package/build/markers/removeDuplicateMarks.js.map +1 -0
- package/build/markers/removeMarks.js +10 -0
- package/build/markers/removeMarks.js.map +1 -0
- package/build/parse/build/build.js +54 -0
- package/build/parse/build/build.js.map +1 -0
- package/build/parse/build/index.js +9 -0
- package/build/parse/build/index.js.map +1 -0
- package/build/parse/build/private/adapt.js +105 -0
- package/build/parse/build/private/adapt.js.map +1 -0
- package/build/parse/build/private/adaptAttributes.js +35 -0
- package/build/parse/build/private/adaptAttributes.js.map +1 -0
- package/build/parse/build/private/alwaysFilterElements.js +27 -0
- package/build/parse/build/private/alwaysFilterElements.js.map +1 -0
- package/build/parse/build/private/combineIntoImplicitParagraphs.js +123 -0
- package/build/parse/build/private/combineIntoImplicitParagraphs.js.map +1 -0
- package/build/parse/build/private/filterBeforeTokenizing.js +32 -0
- package/build/parse/build/private/filterBeforeTokenizing.js.map +1 -0
- package/build/parse/build/private/filterHelpers.js +44 -0
- package/build/parse/build/private/filterHelpers.js.map +1 -0
- package/build/parse/build/private/filterTree.js +42 -0
- package/build/parse/build/private/filterTree.js.map +1 -0
- package/build/parse/build/private/getTextElementPositions.js +179 -0
- package/build/parse/build/private/getTextElementPositions.js.map +1 -0
- package/build/parse/build/private/helpers/parseClassAttribute.js +9 -0
- package/build/parse/build/private/helpers/parseClassAttribute.js.map +1 -0
- package/build/parse/build/private/isPhrasingContent.js +24 -0
- package/build/parse/build/private/isPhrasingContent.js.map +1 -0
- package/build/parse/build/private/parseBlocks.js +144 -0
- package/build/parse/build/private/parseBlocks.js.map +1 -0
- package/build/parse/build/private/tokenize.js +72 -0
- package/build/parse/build/private/tokenize.js.map +1 -0
- package/build/parse/language/LanguageProcessor.js +70 -0
- package/build/parse/language/LanguageProcessor.js.map +1 -0
- package/build/parse/structure/Heading.js +26 -0
- package/build/parse/structure/Heading.js.map +1 -0
- package/build/parse/structure/Node.js +69 -0
- package/build/parse/structure/Node.js.map +1 -0
- package/build/parse/structure/Paragraph.js +47 -0
- package/build/parse/structure/Paragraph.js.map +1 -0
- package/build/parse/structure/Sentence.js +30 -0
- package/build/parse/structure/Sentence.js.map +1 -0
- package/build/parse/structure/SourceCodeLocation.js +40 -0
- package/build/parse/structure/SourceCodeLocation.js.map +1 -0
- package/build/parse/structure/Text.js +26 -0
- package/build/parse/structure/Text.js.map +1 -0
- package/build/parse/structure/Token.js +24 -0
- package/build/parse/structure/Token.js.map +1 -0
- package/build/parse/structure/index.js +12 -0
- package/build/parse/structure/index.js.map +1 -0
- package/build/parse/traverse/findAllInTree.js +56 -0
- package/build/parse/traverse/findAllInTree.js.map +1 -0
- package/build/parse/traverse/index.js +10 -0
- package/build/parse/traverse/index.js.map +1 -0
- package/build/parse/traverse/innerText.js +25 -0
- package/build/parse/traverse/innerText.js.map +1 -0
- package/build/parsedPaper/ParsedPaper.js +93 -0
- package/build/parsedPaper/ParsedPaper.js.map +1 -0
- package/build/parsedPaper/assess/TreeAssessor.js +175 -0
- package/build/parsedPaper/assess/TreeAssessor.js.map +1 -0
- package/build/parsedPaper/assess/assessmentListFactories.js +67 -0
- package/build/parsedPaper/assess/assessmentListFactories.js.map +1 -0
- package/build/parsedPaper/assess/assessments/Assessment.js +92 -0
- package/build/parsedPaper/assess/assessments/Assessment.js.map +1 -0
- package/build/parsedPaper/assess/assessments/index.js +7 -0
- package/build/parsedPaper/assess/assessments/index.js.map +1 -0
- package/build/parsedPaper/assess/assessorFactories.js +96 -0
- package/build/parsedPaper/assess/assessorFactories.js.map +1 -0
- package/build/parsedPaper/assess/cornerstone/assessmentListFactories.js +43 -0
- package/build/parsedPaper/assess/cornerstone/assessmentListFactories.js.map +1 -0
- package/build/parsedPaper/assess/cornerstone/index.js +3 -0
- package/build/parsedPaper/assess/cornerstone/index.js.map +1 -0
- package/build/parsedPaper/assess/index.js +15 -0
- package/build/parsedPaper/assess/index.js.map +1 -0
- package/build/parsedPaper/build/PaperParser.js +97 -0
- package/build/parsedPaper/build/PaperParser.js.map +1 -0
- package/build/parsedPaper/build/linguisticParsing/Sentence.js +89 -0
- package/build/parsedPaper/build/linguisticParsing/Sentence.js.map +1 -0
- package/build/parsedPaper/build/linguisticParsing/SentenceTokenizer.js +287 -0
- package/build/parsedPaper/build/linguisticParsing/SentenceTokenizer.js.map +1 -0
- package/build/parsedPaper/build/linguisticParsing/parseText.js +20 -0
- package/build/parsedPaper/build/linguisticParsing/parseText.js.map +1 -0
- package/build/parsedPaper/build/tree/TreeBuilder.js +76 -0
- package/build/parsedPaper/build/tree/TreeBuilder.js.map +1 -0
- package/build/parsedPaper/build/tree/cleanup/calculateTextIndices.js +178 -0
- package/build/parsedPaper/build/tree/cleanup/calculateTextIndices.js.map +1 -0
- package/build/parsedPaper/build/tree/cleanup/getElementContent.js +21 -0
- package/build/parsedPaper/build/tree/cleanup/getElementContent.js.map +1 -0
- package/build/parsedPaper/build/tree/cleanup/postParsing.js +37 -0
- package/build/parsedPaper/build/tree/cleanup/postParsing.js.map +1 -0
- package/build/parsedPaper/build/tree/html/HTMLTreeConverter.js +220 -0
- package/build/parsedPaper/build/tree/html/HTMLTreeConverter.js.map +1 -0
- package/build/parsedPaper/build/tree/html/buildTree.js +30 -0
- package/build/parsedPaper/build/tree/html/buildTree.js.map +1 -0
- package/build/parsedPaper/build/tree/html/htmlConstants.js +30 -0
- package/build/parsedPaper/build/tree/html/htmlConstants.js.map +1 -0
- package/build/parsedPaper/build/tree/index.js +15 -0
- package/build/parsedPaper/build/tree/index.js.map +1 -0
- package/build/parsedPaper/build/tree/metadata/buildTree.js +30 -0
- package/build/parsedPaper/build/tree/metadata/buildTree.js.map +1 -0
- package/build/parsedPaper/research/TreeResearcher.js +131 -0
- package/build/parsedPaper/research/TreeResearcher.js.map +1 -0
- package/build/parsedPaper/research/index.js +12 -0
- package/build/parsedPaper/research/index.js.map +1 -0
- package/build/parsedPaper/research/researches/Headings.js +20 -0
- package/build/parsedPaper/research/researches/Headings.js.map +1 -0
- package/build/parsedPaper/research/researches/LinkStatistics.js +123 -0
- package/build/parsedPaper/research/researches/LinkStatistics.js.map +1 -0
- package/build/parsedPaper/research/researches/Research.js +53 -0
- package/build/parsedPaper/research/researches/Research.js.map +1 -0
- package/build/parsedPaper/research/researches/index.js +2 -0
- package/build/parsedPaper/research/researches/index.js.map +1 -0
- package/build/parsedPaper/structure/tree/FormattingElement.js +67 -0
- package/build/parsedPaper/structure/tree/FormattingElement.js.map +1 -0
- package/build/parsedPaper/structure/tree/SourceCodeLocation.js +42 -0
- package/build/parsedPaper/structure/tree/SourceCodeLocation.js.map +1 -0
- package/build/parsedPaper/structure/tree/TextContainer.js +84 -0
- package/build/parsedPaper/structure/tree/TextContainer.js.map +1 -0
- package/build/parsedPaper/structure/tree/index.js +11 -0
- package/build/parsedPaper/structure/tree/index.js.map +1 -0
- package/build/parsedPaper/structure/tree/nodes/Heading.js +27 -0
- package/build/parsedPaper/structure/tree/nodes/Heading.js.map +1 -0
- package/build/parsedPaper/structure/tree/nodes/LeafNode.js +75 -0
- package/build/parsedPaper/structure/tree/nodes/LeafNode.js.map +1 -0
- package/build/parsedPaper/structure/tree/nodes/List.js +48 -0
- package/build/parsedPaper/structure/tree/nodes/List.js.map +1 -0
- package/build/parsedPaper/structure/tree/nodes/ListItem.js +27 -0
- package/build/parsedPaper/structure/tree/nodes/ListItem.js.map +1 -0
- package/build/parsedPaper/structure/tree/nodes/MetadataMiscellaneous.js +45 -0
- package/build/parsedPaper/structure/tree/nodes/MetadataMiscellaneous.js.map +1 -0
- package/build/parsedPaper/structure/tree/nodes/MetadataText.js +25 -0
- package/build/parsedPaper/structure/tree/nodes/MetadataText.js.map +1 -0
- package/build/parsedPaper/structure/tree/nodes/Node.js +153 -0
- package/build/parsedPaper/structure/tree/nodes/Node.js.map +1 -0
- package/build/parsedPaper/structure/tree/nodes/Paragraph.js +23 -0
- package/build/parsedPaper/structure/tree/nodes/Paragraph.js.map +1 -0
- package/build/parsedPaper/structure/tree/nodes/StructuredNode.js +53 -0
- package/build/parsedPaper/structure/tree/nodes/StructuredNode.js.map +1 -0
- package/build/parsedPaper/structure/tree/nodes/index.js +11 -0
- package/build/parsedPaper/structure/tree/nodes/index.js.map +1 -0
- package/build/scoring/assessments/assessment.js +70 -0
- package/build/scoring/assessments/assessment.js.map +1 -0
- package/build/scoring/assessments/index.js +61 -0
- package/build/scoring/assessments/index.js.map +1 -0
- package/build/scoring/assessments/readability/ParagraphTooLongAssessment.js +159 -0
- package/build/scoring/assessments/readability/ParagraphTooLongAssessment.js.map +1 -0
- 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 +128 -0
- package/build/scoring/assessments/readability/SentenceBeginningsAssessment.js.map +1 -0
- package/build/scoring/assessments/readability/SentenceLengthInTextAssessment.js +170 -0
- package/build/scoring/assessments/readability/SentenceLengthInTextAssessment.js.map +1 -0
- package/build/scoring/assessments/readability/TransitionWordsAssessment.js +156 -0
- package/build/scoring/assessments/readability/TransitionWordsAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/ImageCountAssessment.js +104 -0
- package/build/scoring/assessments/seo/ImageCountAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/InternalLinksAssessment.js +106 -0
- package/build/scoring/assessments/seo/InternalLinksAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/IntroductionKeywordAssessment.js +103 -0
- package/build/scoring/assessments/seo/IntroductionKeywordAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/KeyphraseAssessment.js +98 -0
- package/build/scoring/assessments/seo/KeyphraseAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/KeyphraseLengthAssessment.js +103 -0
- package/build/scoring/assessments/seo/KeyphraseLengthAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/KeywordDensityAssessment.js +111 -0
- package/build/scoring/assessments/seo/KeywordDensityAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/MetaDescriptionKeywordAssessment.js +111 -0
- package/build/scoring/assessments/seo/MetaDescriptionKeywordAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/MetaDescriptionLengthAssessment.js +104 -0
- package/build/scoring/assessments/seo/MetaDescriptionLengthAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/MetaTitleKeywordAssessment.js +108 -0
- package/build/scoring/assessments/seo/MetaTitleKeywordAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/NumberInMetaTitleAssessment.js +101 -0
- package/build/scoring/assessments/seo/NumberInMetaTitleAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/OutboundLinksAssessment.js +107 -0
- package/build/scoring/assessments/seo/OutboundLinksAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/PageTitleWidthAssessment.js +99 -0
- package/build/scoring/assessments/seo/PageTitleWidthAssessment.js.map +1 -0
- 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 +108 -0
- package/build/scoring/assessments/seo/SingleH1Assessment.js.map +1 -0
- package/build/scoring/assessments/seo/SingleTitleAssessment.js +101 -0
- package/build/scoring/assessments/seo/SingleTitleAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/SubHeadingsKeywordAssessment.js +99 -0
- package/build/scoring/assessments/seo/SubHeadingsKeywordAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/TextImagesAssessment.js +135 -0
- package/build/scoring/assessments/seo/TextImagesAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/TextLengthAssessment.js +97 -0
- package/build/scoring/assessments/seo/TextLengthAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/UrlKeywordAssessment.js +100 -0
- package/build/scoring/assessments/seo/UrlKeywordAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/UrlLengthAssessment.js +99 -0
- package/build/scoring/assessments/seo/UrlLengthAssessment.js.map +1 -0
- package/build/scoring/assessors/assessor.js +277 -0
- package/build/scoring/assessors/assessor.js.map +1 -0
- package/build/scoring/assessors/avadaAssessor.js +85 -0
- package/build/scoring/assessors/avadaAssessor.js.map +1 -0
- package/build/scoring/assessors/contentAssessor.js +143 -0
- package/build/scoring/assessors/contentAssessor.js.map +1 -0
- package/build/scoring/assessors/index.js +5 -0
- package/build/scoring/assessors/index.js.map +1 -0
- package/build/scoring/assessors/seoAssessor.js +38 -0
- package/build/scoring/assessors/seoAssessor.js.map +1 -0
- package/build/scoring/helpers/assessments/checkForTooLongSentences.js +14 -0
- package/build/scoring/helpers/assessments/checkForTooLongSentences.js.map +1 -0
- package/build/scoring/helpers/assessments/inRange.js +43 -0
- package/build/scoring/helpers/assessments/inRange.js.map +1 -0
- package/build/scoring/helpers/assessments/keyphraseLengthFactor.js +11 -0
- package/build/scoring/helpers/assessments/keyphraseLengthFactor.js.map +1 -0
- package/build/scoring/helpers/assessments/recommendedKeywordCount.js +41 -0
- package/build/scoring/helpers/assessments/recommendedKeywordCount.js.map +1 -0
- package/build/scoring/helpers/index.js +84 -0
- package/build/scoring/helpers/index.js.map +1 -0
- package/build/scoring/interpreters/index.js +3 -0
- package/build/scoring/interpreters/index.js.map +1 -0
- package/build/scoring/interpreters/scoreToRating.js +26 -0
- package/build/scoring/interpreters/scoreToRating.js.map +1 -0
- package/build/scoring/renderers/AssessorPresenter.js +342 -0
- package/build/scoring/renderers/AssessorPresenter.js.map +1 -0
- package/build/scoring/scoreAggregators/ReadabilityScoreAggregator.js +197 -0
- package/build/scoring/scoreAggregators/ReadabilityScoreAggregator.js.map +1 -0
- package/build/scoring/scoreAggregators/SEOScoreAggregator.js +54 -0
- package/build/scoring/scoreAggregators/SEOScoreAggregator.js.map +1 -0
- package/build/scoring/scoreAggregators/ScoreAggregator.js +24 -0
- package/build/scoring/scoreAggregators/ScoreAggregator.js.map +1 -0
- package/build/scoring/scoreAggregators/index.js +4 -0
- package/build/scoring/scoreAggregators/index.js.map +1 -0
- package/build/values/AssessmentResult.js +479 -0
- package/build/values/AssessmentResult.js.map +1 -0
- package/build/values/Mark.js +267 -0
- package/build/values/Mark.js.map +1 -0
- package/build/values/Paper.js +489 -0
- package/build/values/Paper.js.map +1 -0
- package/build/values/index.js +5 -0
- package/build/values/index.js.map +1 -0
- package/build/vendor/turkishStemmer.js +2811 -0
- package/build/vendor/turkishStemmer.js.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkNofollow.js","names":["htmlparser","anchorHTML","linkFollow","parser","Parser","onopentag","tagName","attributes","rel","toLowerCase","split","includes","write","end"],"sources":["../../../../src/languageProcessing/helpers/link/checkNofollow.js"],"sourcesContent":["/** @module stringProcessing/checkNofollow */\n\n// We use an external library, which can be found here: https://github.com/fb55/htmlparser2.\nimport htmlparser from \"htmlparser2\";\n\n/**\n * Checks if a link has a `rel` attribute with a `nofollow` value. If it has, returns Nofollow, otherwise Dofollow.\n *\n * @param {string} anchorHTML The anchor HTML to check against.\n * @returns {string} Returns Dofollow or Nofollow.\n */\nexport default function( anchorHTML ) {\n\tlet linkFollow = \"Dofollow\";\n\n\tconst parser = new htmlparser.Parser( {\n\t\t/**\n\t\t * Detects if there is a `nofollow` value in the `rel` attribute of a link.\n\t\t *\n\t\t * @param {string} tagName The tag name.\n\t\t * @param {object} attributes The tag attributes with the names and values of each attribute found.\n\t\t * @returns {void}\n\t\t */\n\t\tonopentag: function( tagName, attributes ) {\n\t\t\tif ( tagName !== \"a\" || ! attributes.rel ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( attributes.rel.toLowerCase().split( /\\s/ ).includes( \"nofollow\" ) ) {\n\t\t\t\tlinkFollow = \"Nofollow\";\n\t\t\t}\n\t\t},\n\t} );\n\n\tparser.write( anchorHTML );\n\tparser.end();\n\n\treturn linkFollow;\n}\n"],"mappings":"AAAA;;AAEA;AACA,OAAOA,UAAU,MAAM,aAAa;;AAEpC;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,UAAUC,UAAU,EAAG;EACrC,IAAIC,UAAU,GAAG,UAAU;EAE3B,MAAMC,MAAM,GAAG,IAAIH,UAAU,CAACI,MAAM,CAAE;IACrC;AACF;AACA;AACA;AACA;AACA;AACA;IACEC,SAAS,EAAE,SAAAA,CAAUC,OAAO,EAAEC,UAAU,EAAG;MAC1C,IAAKD,OAAO,KAAK,GAAG,IAAI,CAAEC,UAAU,CAACC,GAAG,EAAG;QAC1C;MACD;MAEA,IAAKD,UAAU,CAACC,GAAG,CAACC,WAAW,CAAC,CAAC,CAACC,KAAK,CAAE,IAAK,CAAC,CAACC,QAAQ,CAAE,UAAW,CAAC,EAAG;QACxET,UAAU,GAAG,UAAU;MACxB;IACD;EACD,CAAE,CAAC;EAEHC,MAAM,CAACS,KAAK,CAAEX,UAAW,CAAC;EAC1BE,MAAM,CAACU,GAAG,CAAC,CAAC;EAEZ,OAAOX,UAAU;AAClB","ignoreList":[]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/** @module stringProcessing/getAnchorsFromText */
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Check for anchors in the text string and returns them in an array.
|
|
5
|
+
*
|
|
6
|
+
* @param {String} text The text to check for matches.
|
|
7
|
+
*
|
|
8
|
+
* @returns {Array} The matched links in text.
|
|
9
|
+
*/
|
|
10
|
+
export default function (text) {
|
|
11
|
+
let matches;
|
|
12
|
+
|
|
13
|
+
/*
|
|
14
|
+
* Regex matches everything between <a> and </a>.
|
|
15
|
+
*
|
|
16
|
+
* There must be:
|
|
17
|
+
* - at least one whitespace after the starting `<a`, otherwise it matches `<abbr` tags.
|
|
18
|
+
* - followed by at least one not `>`, to match any attributes that are given.
|
|
19
|
+
* This could be one or zero (`*`), but an anchor tag without an `href` attribute does not make sense.
|
|
20
|
+
* The regex could be more precise here, by checking for the `href`, but this is less complex.
|
|
21
|
+
* - losing tag of the opening tag `>`.
|
|
22
|
+
* - content of the anchor tag. Any character, including line separators (`[\n\r\u2028\u2029]`).
|
|
23
|
+
* - the closing anchor tag.
|
|
24
|
+
*/
|
|
25
|
+
matches = text.match(/<a[\s]+(?:[^>]+)>((?:.|[\n\r\u2028\u2029])*?)<\/a>/ig);
|
|
26
|
+
if (matches === null) {
|
|
27
|
+
matches = [];
|
|
28
|
+
}
|
|
29
|
+
return matches;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=getAnchorsFromText.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getAnchorsFromText.js","names":["text","matches","match"],"sources":["../../../../src/languageProcessing/helpers/link/getAnchorsFromText.js"],"sourcesContent":["/** @module stringProcessing/getAnchorsFromText */\n\n/**\n * Check for anchors in the text string and returns them in an array.\n *\n * @param {String} text The text to check for matches.\n *\n * @returns {Array} The matched links in text.\n */\nexport default function( text ) {\n\tlet matches;\n\n\t/*\n\t * Regex matches everything between <a> and </a>.\n\t *\n\t * There must be:\n\t * - at least one whitespace after the starting `<a`, otherwise it matches `<abbr` tags.\n\t * - followed by at least one not `>`, to match any attributes that are given.\n\t * This could be one or zero (`*`), but an anchor tag without an `href` attribute does not make sense.\n\t * The regex could be more precise here, by checking for the `href`, but this is less complex.\n\t * - losing tag of the opening tag `>`.\n\t * - content of the anchor tag. Any character, including line separators (`[\\n\\r\\u2028\\u2029]`).\n\t * - the closing anchor tag.\n\t */\n\tmatches = text.match( /<a[\\s]+(?:[^>]+)>((?:.|[\\n\\r\\u2028\\u2029])*?)<\\/a>/ig );\n\n\tif ( matches === null ) {\n\t\tmatches = [];\n\t}\n\n\treturn matches;\n}\n"],"mappings":"AAAA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,UAAUA,IAAI,EAAG;EAC/B,IAAIC,OAAO;;EAEX;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACCA,OAAO,GAAGD,IAAI,CAACE,KAAK,CAAE,sDAAuD,CAAC;EAE9E,IAAKD,OAAO,KAAK,IAAI,EAAG;IACvBA,OAAO,GAAG,EAAE;EACb;EAEA,OAAOA,OAAO;AACf","ignoreList":[]}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/** @module stringProcess/getLinkType */
|
|
2
|
+
|
|
3
|
+
import urlHelper from "../url/url";
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Determines the type of link.
|
|
7
|
+
*
|
|
8
|
+
* @param {string} anchor String with anchor element.
|
|
9
|
+
* @param {string} siteUrlOrDomain URL or domain to match against.
|
|
10
|
+
*
|
|
11
|
+
* @returns {string} The link type (other, external or internal).
|
|
12
|
+
*/
|
|
13
|
+
export default function (anchor, siteUrlOrDomain) {
|
|
14
|
+
const anchorUrl = urlHelper.getFromAnchorTag(anchor);
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* A link is "Other" if:
|
|
18
|
+
* - The protocol is neither null, nor http, nor https.
|
|
19
|
+
* - The link is a relative fragment URL (starts with #), because it won't navigate to another page.
|
|
20
|
+
*/
|
|
21
|
+
const protocol = urlHelper.getProtocol(anchorUrl);
|
|
22
|
+
if (protocol && !urlHelper.protocolIsHttpScheme(protocol) || urlHelper.isRelativeFragmentURL(anchorUrl)) {
|
|
23
|
+
return "other";
|
|
24
|
+
}
|
|
25
|
+
if (urlHelper.isInternalLink(anchorUrl, siteUrlOrDomain)) {
|
|
26
|
+
return "internal";
|
|
27
|
+
}
|
|
28
|
+
return "external";
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=getLinkType.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getLinkType.js","names":["urlHelper","anchor","siteUrlOrDomain","anchorUrl","getFromAnchorTag","protocol","getProtocol","protocolIsHttpScheme","isRelativeFragmentURL","isInternalLink"],"sources":["../../../../src/languageProcessing/helpers/link/getLinkType.js"],"sourcesContent":["/** @module stringProcess/getLinkType */\n\nimport urlHelper from \"../url/url\";\n\n/**\n * Determines the type of link.\n *\n * @param {string} \tanchor \t\t\t\tString with anchor element.\n * @param {string} \tsiteUrlOrDomain\t\tURL or domain to match against.\n *\n * @returns {string} The link type (other, external or internal).\n */\nexport default function( anchor, siteUrlOrDomain ) {\n\tconst anchorUrl = urlHelper.getFromAnchorTag( anchor );\n\n\t/**\n\t * A link is \"Other\" if:\n\t * - The protocol is neither null, nor http, nor https.\n\t * - The link is a relative fragment URL (starts with #), because it won't navigate to another page.\n\t */\n\tconst protocol = urlHelper.getProtocol( anchorUrl );\n\tif ( protocol && ! urlHelper.protocolIsHttpScheme( protocol ) ||\n\t\turlHelper.isRelativeFragmentURL( anchorUrl ) ) {\n\t\treturn \"other\";\n\t}\n\n\tif ( urlHelper.isInternalLink( anchorUrl, siteUrlOrDomain ) ) {\n\t\treturn \"internal\";\n\t}\n\n\treturn \"external\";\n}\n"],"mappings":"AAAA;;AAEA,OAAOA,SAAS;;AAEhB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,UAAUC,MAAM,EAAEC,eAAe,EAAG;EAClD,MAAMC,SAAS,GAAGH,SAAS,CAACI,gBAAgB,CAAEH,MAAO,CAAC;;EAEtD;AACD;AACA;AACA;AACA;EACC,MAAMI,QAAQ,GAAGL,SAAS,CAACM,WAAW,CAAEH,SAAU,CAAC;EACnD,IAAKE,QAAQ,IAAI,CAAEL,SAAS,CAACO,oBAAoB,CAAEF,QAAS,CAAC,IAC5DL,SAAS,CAACQ,qBAAqB,CAAEL,SAAU,CAAC,EAAG;IAC/C,OAAO,OAAO;EACf;EAEA,IAAKH,SAAS,CAACS,cAAc,CAAEN,SAAS,EAAED,eAAgB,CAAC,EAAG;IAC7D,OAAO,UAAU;EAClB;EAEA,OAAO,UAAU;AAClB","ignoreList":[]}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { isEmpty, sum } from "lodash";
|
|
2
|
+
import matchTextWithArray from "./matchTextWithArray.js";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Matches forms of words in the keyphrase against a given text.
|
|
6
|
+
*
|
|
7
|
+
* @param {Array} keywordForms The array with word forms of all (content) words from the keyphrase in a shape
|
|
8
|
+
* [ [ form1, form2, ... ], [ form1, form2, ... ] ].
|
|
9
|
+
* @param {string} text The string to match the word forms against.
|
|
10
|
+
* @param {string} locale The locale of the paper.
|
|
11
|
+
* @param {function} matchWordCustomHelper The helper function to match word in text.
|
|
12
|
+
*
|
|
13
|
+
* @returns {Object} The number and the percentage of the keyphrase words that were matched in the text by at least one form,
|
|
14
|
+
* and the lowest number of positions of the matches.
|
|
15
|
+
*/
|
|
16
|
+
const findWordFormsInString = function (keywordForms, text, locale, matchWordCustomHelper) {
|
|
17
|
+
const wordNumber = keywordForms.length;
|
|
18
|
+
const foundWords = Array(wordNumber);
|
|
19
|
+
let positions = [];
|
|
20
|
+
let matches = [];
|
|
21
|
+
for (let i = 0; i < wordNumber; i++) {
|
|
22
|
+
const matchedKeyphrase = matchTextWithArray(text, keywordForms[i], locale, matchWordCustomHelper);
|
|
23
|
+
foundWords[i] = matchedKeyphrase.count > 0 ? 1 : 0;
|
|
24
|
+
positions.push(matchedKeyphrase.position);
|
|
25
|
+
matches = matches.concat(matchedKeyphrase.matches);
|
|
26
|
+
}
|
|
27
|
+
const foundNumberOfWords = sum(foundWords);
|
|
28
|
+
const result = {
|
|
29
|
+
countWordMatches: foundNumberOfWords,
|
|
30
|
+
percentWordMatches: 0,
|
|
31
|
+
matches: matches
|
|
32
|
+
};
|
|
33
|
+
if (wordNumber > 0) {
|
|
34
|
+
result.percentWordMatches = Math.round(foundNumberOfWords / wordNumber * 100);
|
|
35
|
+
}
|
|
36
|
+
// Filtered out negative number, i.e. -1.
|
|
37
|
+
positions = positions.filter(position => position >= 0);
|
|
38
|
+
result.position = positions.length === 0 ? -1 : Math.min(...positions);
|
|
39
|
+
return result;
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* Matches forms of words in the keyphrase and in the synonyms against a given text.
|
|
44
|
+
*
|
|
45
|
+
* @param {Object} topicForms The object with word forms of all (content) words from the keyphrase and eventually synonyms,
|
|
46
|
+
* comes in a shape {
|
|
47
|
+
* keyphraseForms: [[ form1, form2, ... ], [ form1, form2, ... ]],
|
|
48
|
+
* synonymsForms: [
|
|
49
|
+
* [[ form1, form2, ... ], [ form1, form2, ... ]],
|
|
50
|
+
* [[ form1, form2, ... ], [ form1, form2, ... ]],
|
|
51
|
+
* [[ form1, form2, ... ], [ form1, form2, ... ]],
|
|
52
|
+
* ],
|
|
53
|
+
* }
|
|
54
|
+
* @param {string} text The string to match the word forms against.
|
|
55
|
+
* @param {boolean} useSynonyms Whether to use synonyms as if it was keyphrase or not (depends on the assessment).
|
|
56
|
+
* @param {string} locale The locale of the paper.
|
|
57
|
+
* @param {function} matchWordCustomHelper The language-specific helper function to match word in text.
|
|
58
|
+
*
|
|
59
|
+
* @returns {Object} The number and the percentage for the keyphrase words or synonyms that were matched in the text by at least one form,
|
|
60
|
+
* and whether the keyphrase or a synonym was matched.
|
|
61
|
+
*/
|
|
62
|
+
const findTopicFormsInString = function (topicForms, text, useSynonyms, locale, matchWordCustomHelper) {
|
|
63
|
+
// First check if the keyword is found in the text
|
|
64
|
+
let result = findWordFormsInString(topicForms.keyphraseForms, text, locale, matchWordCustomHelper);
|
|
65
|
+
result.keyphraseOrSynonym = "keyphrase";
|
|
66
|
+
|
|
67
|
+
// If a full match found with the keyword or if no synonyms are supplied or supposed to be used, return the keyphrase search result.
|
|
68
|
+
if (result.percentWordMatches === 100 || useSynonyms === false || isEmpty(topicForms.synonymsForms)) {
|
|
69
|
+
return result;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
// Collect results of matching of every synonym with the text.
|
|
73
|
+
const resultsSynonyms = [];
|
|
74
|
+
for (let i = 0; i < topicForms.synonymsForms.length; i++) {
|
|
75
|
+
const synonym = topicForms.synonymsForms[i];
|
|
76
|
+
resultsSynonyms[i] = findWordFormsInString(synonym, text, locale, matchWordCustomHelper);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
// Find which synonym occurred most fully.
|
|
80
|
+
const foundSynonyms = resultsSynonyms.map(resultSynonyms => resultSynonyms.percentWordMatches);
|
|
81
|
+
const bestSynonymIndex = foundSynonyms.indexOf(Math.max(...foundSynonyms));
|
|
82
|
+
|
|
83
|
+
// If the best synonym showed lower results than the keyword, return the keyword.
|
|
84
|
+
if (result.percentWordMatches >= resultsSynonyms[bestSynonymIndex].percentWordMatches) {
|
|
85
|
+
return result;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
// If the best synonym showed better results than the keyword, return the synonym.
|
|
89
|
+
result = resultsSynonyms[bestSynonymIndex];
|
|
90
|
+
result.keyphraseOrSynonym = "synonym";
|
|
91
|
+
return result;
|
|
92
|
+
};
|
|
93
|
+
export { findWordFormsInString, findTopicFormsInString };
|
|
94
|
+
//# sourceMappingURL=findKeywordFormsInString.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"findKeywordFormsInString.js","names":["isEmpty","sum","matchTextWithArray","findWordFormsInString","keywordForms","text","locale","matchWordCustomHelper","wordNumber","length","foundWords","Array","positions","matches","i","matchedKeyphrase","count","push","position","concat","foundNumberOfWords","result","countWordMatches","percentWordMatches","Math","round","filter","min","findTopicFormsInString","topicForms","useSynonyms","keyphraseForms","keyphraseOrSynonym","synonymsForms","resultsSynonyms","synonym","foundSynonyms","map","resultSynonyms","bestSynonymIndex","indexOf","max"],"sources":["../../../../src/languageProcessing/helpers/match/findKeywordFormsInString.js"],"sourcesContent":["import { isEmpty, sum } from \"lodash\";\nimport matchTextWithArray from \"./matchTextWithArray.js\";\n\n/**\n * Matches forms of words in the keyphrase against a given text.\n *\n * @param {Array} keywordForms The array with word forms of all (content) words from the keyphrase in a shape\n * [ [ form1, form2, ... ], [ form1, form2, ... ] ].\n * @param {string} text The string to match the word forms against.\n * @param {string} locale The locale of the paper.\n * @param {function} matchWordCustomHelper The helper function to match word in text.\n *\n * @returns {Object} The number and the percentage of the keyphrase words that were matched in the text by at least one form,\n * and the lowest number of positions of the matches.\n */\nconst findWordFormsInString = function( keywordForms, text, locale, matchWordCustomHelper ) {\n\tconst wordNumber = keywordForms.length;\n\tconst foundWords = Array( wordNumber );\n\tlet positions = [];\n\tlet matches = [];\n\n\tfor ( let i = 0; i < wordNumber; i++ ) {\n\t\tconst matchedKeyphrase = matchTextWithArray( text, keywordForms[ i ], locale, matchWordCustomHelper );\n\t\tfoundWords[ i ] = matchedKeyphrase.count > 0 ? 1 : 0;\n\t\tpositions.push( matchedKeyphrase.position );\n\t\tmatches = matches.concat( matchedKeyphrase.matches );\n\t}\n\tconst foundNumberOfWords = sum( foundWords );\n\tconst result = {\n\t\tcountWordMatches: foundNumberOfWords,\n\t\tpercentWordMatches: 0,\n\t\tmatches: matches,\n\t};\n\n\tif ( wordNumber > 0 ) {\n\t\tresult.percentWordMatches = Math.round( foundNumberOfWords / wordNumber * 100 );\n\t}\n\t// Filtered out negative number, i.e. -1.\n\tpositions = positions.filter( position => position >= 0 );\n\tresult.position = positions.length === 0 ? -1 : Math.min( ...positions );\n\n\treturn result;\n};\n\n/**\n * Matches forms of words in the keyphrase and in the synonyms against a given text.\n *\n * @param {Object} topicForms The object with word forms of all (content) words from the keyphrase and eventually synonyms,\n * comes in a shape {\n * keyphraseForms: [[ form1, form2, ... ], [ form1, form2, ... ]],\n * synonymsForms: [\n * [[ form1, form2, ... ], [ form1, form2, ... ]],\n * [[ form1, form2, ... ], [ form1, form2, ... ]],\n * [[ form1, form2, ... ], [ form1, form2, ... ]],\n * ],\n * }\n * @param {string} text The string to match the word forms against.\n * @param {boolean} useSynonyms Whether to use synonyms as if it was keyphrase or not (depends on the assessment).\n * @param {string} locale The locale of the paper.\n * @param {function} matchWordCustomHelper The language-specific helper function to match word in text.\n *\n * @returns {Object} The number and the percentage for the keyphrase words or synonyms that were matched in the text by at least one form,\n * and whether the keyphrase or a synonym was matched.\n */\nconst findTopicFormsInString = function( topicForms, text, useSynonyms, locale, matchWordCustomHelper ) {\n\t// First check if the keyword is found in the text\n\tlet result = findWordFormsInString( topicForms.keyphraseForms, text, locale, matchWordCustomHelper );\n\tresult.keyphraseOrSynonym = \"keyphrase\";\n\n\t// If a full match found with the keyword or if no synonyms are supplied or supposed to be used, return the keyphrase search result.\n\tif ( result.percentWordMatches === 100 || useSynonyms === false || isEmpty( topicForms.synonymsForms ) ) {\n\t\treturn result;\n\t}\n\n\t// Collect results of matching of every synonym with the text.\n\tconst resultsSynonyms = [];\n\tfor ( let i = 0; i < topicForms.synonymsForms.length; i++ ) {\n\t\tconst synonym = topicForms.synonymsForms[ i ];\n\t\tresultsSynonyms[ i ] = findWordFormsInString( synonym, text, locale, matchWordCustomHelper );\n\t}\n\n\t// Find which synonym occurred most fully.\n\tconst foundSynonyms = resultsSynonyms.map( resultSynonyms => resultSynonyms.percentWordMatches );\n\tconst bestSynonymIndex = foundSynonyms.indexOf( Math.max( ...foundSynonyms ) );\n\n\t// If the best synonym showed lower results than the keyword, return the keyword.\n\tif ( result.percentWordMatches >= resultsSynonyms[ bestSynonymIndex ].percentWordMatches ) {\n\t\treturn result;\n\t}\n\n\t// If the best synonym showed better results than the keyword, return the synonym.\n\tresult = resultsSynonyms[ bestSynonymIndex ];\n\tresult.keyphraseOrSynonym = \"synonym\";\n\n\treturn result;\n};\n\nexport {\n\tfindWordFormsInString,\n\tfindTopicFormsInString,\n};\n"],"mappings":"AAAA,SAASA,OAAO,EAAEC,GAAG,QAAQ,QAAQ;AACrC,OAAOC,kBAAkB;;AAEzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,qBAAqB,GAAG,SAAAA,CAAUC,YAAY,EAAEC,IAAI,EAAEC,MAAM,EAAEC,qBAAqB,EAAG;EAC3F,MAAMC,UAAU,GAAGJ,YAAY,CAACK,MAAM;EACtC,MAAMC,UAAU,GAAGC,KAAK,CAAEH,UAAW,CAAC;EACtC,IAAII,SAAS,GAAG,EAAE;EAClB,IAAIC,OAAO,GAAG,EAAE;EAEhB,KAAM,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGN,UAAU,EAAEM,CAAC,EAAE,EAAG;IACtC,MAAMC,gBAAgB,GAAGb,kBAAkB,CAAEG,IAAI,EAAED,YAAY,CAAEU,CAAC,CAAE,EAAER,MAAM,EAAEC,qBAAsB,CAAC;IACrGG,UAAU,CAAEI,CAAC,CAAE,GAAGC,gBAAgB,CAACC,KAAK,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;IACpDJ,SAAS,CAACK,IAAI,CAAEF,gBAAgB,CAACG,QAAS,CAAC;IAC3CL,OAAO,GAAGA,OAAO,CAACM,MAAM,CAAEJ,gBAAgB,CAACF,OAAQ,CAAC;EACrD;EACA,MAAMO,kBAAkB,GAAGnB,GAAG,CAAES,UAAW,CAAC;EAC5C,MAAMW,MAAM,GAAG;IACdC,gBAAgB,EAAEF,kBAAkB;IACpCG,kBAAkB,EAAE,CAAC;IACrBV,OAAO,EAAEA;EACV,CAAC;EAED,IAAKL,UAAU,GAAG,CAAC,EAAG;IACrBa,MAAM,CAACE,kBAAkB,GAAGC,IAAI,CAACC,KAAK,CAAEL,kBAAkB,GAAGZ,UAAU,GAAG,GAAI,CAAC;EAChF;EACA;EACAI,SAAS,GAAGA,SAAS,CAACc,MAAM,CAAER,QAAQ,IAAIA,QAAQ,IAAI,CAAE,CAAC;EACzDG,MAAM,CAACH,QAAQ,GAAGN,SAAS,CAACH,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC,GAAGe,IAAI,CAACG,GAAG,CAAE,GAAGf,SAAU,CAAC;EAExE,OAAOS,MAAM;AACd,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMO,sBAAsB,GAAG,SAAAA,CAAUC,UAAU,EAAExB,IAAI,EAAEyB,WAAW,EAAExB,MAAM,EAAEC,qBAAqB,EAAG;EACvG;EACA,IAAIc,MAAM,GAAGlB,qBAAqB,CAAE0B,UAAU,CAACE,cAAc,EAAE1B,IAAI,EAAEC,MAAM,EAAEC,qBAAsB,CAAC;EACpGc,MAAM,CAACW,kBAAkB,GAAG,WAAW;;EAEvC;EACA,IAAKX,MAAM,CAACE,kBAAkB,KAAK,GAAG,IAAIO,WAAW,KAAK,KAAK,IAAI9B,OAAO,CAAE6B,UAAU,CAACI,aAAc,CAAC,EAAG;IACxG,OAAOZ,MAAM;EACd;;EAEA;EACA,MAAMa,eAAe,GAAG,EAAE;EAC1B,KAAM,IAAIpB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGe,UAAU,CAACI,aAAa,CAACxB,MAAM,EAAEK,CAAC,EAAE,EAAG;IAC3D,MAAMqB,OAAO,GAAGN,UAAU,CAACI,aAAa,CAAEnB,CAAC,CAAE;IAC7CoB,eAAe,CAAEpB,CAAC,CAAE,GAAGX,qBAAqB,CAAEgC,OAAO,EAAE9B,IAAI,EAAEC,MAAM,EAAEC,qBAAsB,CAAC;EAC7F;;EAEA;EACA,MAAM6B,aAAa,GAAGF,eAAe,CAACG,GAAG,CAAEC,cAAc,IAAIA,cAAc,CAACf,kBAAmB,CAAC;EAChG,MAAMgB,gBAAgB,GAAGH,aAAa,CAACI,OAAO,CAAEhB,IAAI,CAACiB,GAAG,CAAE,GAAGL,aAAc,CAAE,CAAC;;EAE9E;EACA,IAAKf,MAAM,CAACE,kBAAkB,IAAIW,eAAe,CAAEK,gBAAgB,CAAE,CAAChB,kBAAkB,EAAG;IAC1F,OAAOF,MAAM;EACd;;EAEA;EACAA,MAAM,GAAGa,eAAe,CAAEK,gBAAgB,CAAE;EAC5ClB,MAAM,CAACW,kBAAkB,GAAG,SAAS;EAErC,OAAOX,MAAM;AACd,CAAC;AAED,SACClB,qBAAqB,EACrByB,sBAAsB","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import doubleQuotes from "../sanitize/doubleQuotes";
|
|
2
|
+
import { includes } from "lodash";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Checks if the keyphrase is double-quoted.
|
|
6
|
+
* @param {string} keyphrase The keyphrase to check.
|
|
7
|
+
* @returns {boolean} Whether the keyphrase is double-quoted.
|
|
8
|
+
*/
|
|
9
|
+
const isDoubleQuoted = keyphrase => {
|
|
10
|
+
return includes(doubleQuotes, keyphrase[0]) && includes(doubleQuotes, keyphrase[keyphrase.length - 1]);
|
|
11
|
+
};
|
|
12
|
+
export default isDoubleQuoted;
|
|
13
|
+
//# sourceMappingURL=isDoubleQuoted.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isDoubleQuoted.js","names":["doubleQuotes","includes","isDoubleQuoted","keyphrase","length"],"sources":["../../../../src/languageProcessing/helpers/match/isDoubleQuoted.js"],"sourcesContent":["import doubleQuotes from \"../sanitize/doubleQuotes\";\nimport { includes } from \"lodash\";\n\n/**\n * Checks if the keyphrase is double-quoted.\n * @param {string} keyphrase The keyphrase to check.\n * @returns {boolean} Whether the keyphrase is double-quoted.\n */\nconst isDoubleQuoted = ( keyphrase ) => {\n\treturn ( includes( doubleQuotes, keyphrase[ 0 ] ) && includes( doubleQuotes, keyphrase[ keyphrase.length - 1 ] ) );\n};\n\nexport default isDoubleQuoted;\n"],"mappings":"AAAA,OAAOA,YAAY;AACnB,SAASC,QAAQ,QAAQ,QAAQ;;AAEjC;AACA;AACA;AACA;AACA;AACA,MAAMC,cAAc,GAAKC,SAAS,IAAM;EACvC,OAASF,QAAQ,CAAED,YAAY,EAAEG,SAAS,CAAE,CAAC,CAAG,CAAC,IAAIF,QAAQ,CAAED,YAAY,EAAEG,SAAS,CAAEA,SAAS,CAACC,MAAM,GAAG,CAAC,CAAG,CAAC;AACjH,CAAC;AAED,eAAeF,cAAc","ignoreList":[]}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/** @module stringProcessing/matchTextWithArray */
|
|
2
|
+
|
|
3
|
+
import matchTextWithWord from "./matchTextWithWord";
|
|
4
|
+
import { uniq as unique } from "lodash";
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Matches strings from an array against a given text.
|
|
8
|
+
*
|
|
9
|
+
* @param {String} text The text to match.
|
|
10
|
+
* @param {Array} array The array with strings to match.
|
|
11
|
+
* @param {String} [locale = "en_EN"] The locale of the text to get transliterations.
|
|
12
|
+
* @param {function} matchWordCustomHelper The language-specific helper function to match word in text.
|
|
13
|
+
*
|
|
14
|
+
* @returns {Object} An array with all matches of the text, the number of the matches, and the lowest number of positions of the matches.
|
|
15
|
+
*/
|
|
16
|
+
export default function (text, array, locale = "en_EN", matchWordCustomHelper) {
|
|
17
|
+
let count = 0;
|
|
18
|
+
let matches = [];
|
|
19
|
+
let positions = [];
|
|
20
|
+
unique(array).forEach(function (wordToMatch) {
|
|
21
|
+
const occurrence = matchTextWithWord(text, wordToMatch, locale, matchWordCustomHelper);
|
|
22
|
+
count += occurrence.count;
|
|
23
|
+
matches = matches.concat(occurrence.matches);
|
|
24
|
+
positions.push(occurrence.position);
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
// Filtered out negative number, i.e. -1.
|
|
28
|
+
positions = positions.filter(position => position >= 0);
|
|
29
|
+
return {
|
|
30
|
+
count: count,
|
|
31
|
+
matches: matches,
|
|
32
|
+
position: positions.length === 0 ? -1 : Math.min(...positions)
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=matchTextWithArray.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"matchTextWithArray.js","names":["matchTextWithWord","uniq","unique","text","array","locale","matchWordCustomHelper","count","matches","positions","forEach","wordToMatch","occurrence","concat","push","position","filter","length","Math","min"],"sources":["../../../../src/languageProcessing/helpers/match/matchTextWithArray.js"],"sourcesContent":["/** @module stringProcessing/matchTextWithArray */\n\nimport matchTextWithWord from \"./matchTextWithWord\";\nimport { uniq as unique } from \"lodash\";\n\n/**\n * Matches strings from an array against a given text.\n *\n * @param {String} text The text to match.\n * @param {Array} array The array with strings to match.\n * @param {String} [locale = \"en_EN\"] The locale of the text to get transliterations.\n * @param {function} matchWordCustomHelper The language-specific helper function to match word in text.\n *\n * @returns {Object} An array with all matches of the text, the number of the matches, and the lowest number of positions of the matches.\n */\nexport default function( text, array, locale = \"en_EN\", matchWordCustomHelper ) {\n\tlet count = 0;\n\tlet matches = [];\n\tlet positions = [];\n\n\tunique( array ).forEach( function( wordToMatch ) {\n\t\tconst occurrence = matchTextWithWord( text, wordToMatch, locale, matchWordCustomHelper );\n\t\tcount += occurrence.count;\n\t\tmatches = matches.concat( occurrence.matches );\n\t\tpositions.push( occurrence.position );\n\t} );\n\n\t// Filtered out negative number, i.e. -1.\n\tpositions = positions.filter( position => position >= 0 );\n\n\treturn {\n\t\tcount: count,\n\t\tmatches: matches,\n\t\tposition: positions.length === 0 ? -1 : Math.min( ...positions ),\n\t};\n}\n"],"mappings":"AAAA;;AAEA,OAAOA,iBAAiB;AACxB,SAASC,IAAI,IAAIC,MAAM,QAAQ,QAAQ;;AAEvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,UAAUC,IAAI,EAAEC,KAAK,EAAEC,MAAM,GAAG,OAAO,EAAEC,qBAAqB,EAAG;EAC/E,IAAIC,KAAK,GAAG,CAAC;EACb,IAAIC,OAAO,GAAG,EAAE;EAChB,IAAIC,SAAS,GAAG,EAAE;EAElBP,MAAM,CAAEE,KAAM,CAAC,CAACM,OAAO,CAAE,UAAUC,WAAW,EAAG;IAChD,MAAMC,UAAU,GAAGZ,iBAAiB,CAAEG,IAAI,EAAEQ,WAAW,EAAEN,MAAM,EAAEC,qBAAsB,CAAC;IACxFC,KAAK,IAAIK,UAAU,CAACL,KAAK;IACzBC,OAAO,GAAGA,OAAO,CAACK,MAAM,CAAED,UAAU,CAACJ,OAAQ,CAAC;IAC9CC,SAAS,CAACK,IAAI,CAAEF,UAAU,CAACG,QAAS,CAAC;EACtC,CAAE,CAAC;;EAEH;EACAN,SAAS,GAAGA,SAAS,CAACO,MAAM,CAAED,QAAQ,IAAIA,QAAQ,IAAI,CAAE,CAAC;EAEzD,OAAO;IACNR,KAAK,EAAEA,KAAK;IACZC,OAAO,EAAEA,OAAO;IAChBO,QAAQ,EAAEN,SAAS,CAACQ,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC,GAAGC,IAAI,CAACC,GAAG,CAAE,GAAGV,SAAU;EAChE,CAAC;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { map } from "lodash";
|
|
2
|
+
import addWordBoundary from "../word/addWordboundary.js";
|
|
3
|
+
import stripSpaces from "../sanitize/stripSpaces.js";
|
|
4
|
+
import transliterate from "../transliterate/transliterate.js";
|
|
5
|
+
import transliterateWP from "../transliterate/transliterateWPstyle.js";
|
|
6
|
+
import { replaceTurkishIsMemoized } from "../transliterate/specialCharacterMappings";
|
|
7
|
+
import { getLanguage } from "../../index";
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Creates a regex from the keyword with included wordboundaries.
|
|
11
|
+
*
|
|
12
|
+
* @param {string} keyword The keyword to create a regex from.
|
|
13
|
+
* @param {string} language The language used to determine the word boundary.
|
|
14
|
+
*
|
|
15
|
+
* @returns {RegExp} Regular expression of the keyword with word boundaries.
|
|
16
|
+
*/
|
|
17
|
+
const toRegex = function (keyword, language) {
|
|
18
|
+
keyword = addWordBoundary(keyword, false, "", language);
|
|
19
|
+
return new RegExp(keyword, "ig");
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Matches a string with and without transliteration.
|
|
24
|
+
* @param {string} text The text to match.
|
|
25
|
+
* @param {string} keyword The keyword to match in the text.
|
|
26
|
+
* @param {string} locale The locale used for transliteration.
|
|
27
|
+
* @returns {Array} All matches from the original as the transliterated text and keyword.
|
|
28
|
+
*/
|
|
29
|
+
export default function (text, keyword, locale) {
|
|
30
|
+
const language = getLanguage(locale);
|
|
31
|
+
let keywordRegex = toRegex(keyword, language);
|
|
32
|
+
if (language === "tr") {
|
|
33
|
+
const turkishMappings = replaceTurkishIsMemoized(keyword);
|
|
34
|
+
keywordRegex = new RegExp(turkishMappings.map(x => addWordBoundary(x)).join("|"), "ig");
|
|
35
|
+
}
|
|
36
|
+
const matches = text.match(keywordRegex) || [];
|
|
37
|
+
text = text.replace(keywordRegex, "");
|
|
38
|
+
const transliterateKeyword = transliterate(keyword, locale);
|
|
39
|
+
const transliterateKeywordRegex = toRegex(transliterateKeyword, language);
|
|
40
|
+
const transliterateMatches = text.match(transliterateKeywordRegex) || [];
|
|
41
|
+
let combinedArray = matches.concat(transliterateMatches);
|
|
42
|
+
const transliterateWPKeyword = transliterateWP(keyword, locale);
|
|
43
|
+
if (!(transliterateWPKeyword === transliterateKeyword)) {
|
|
44
|
+
const transliterateWPKeywordRegex = toRegex(transliterateWPKeyword, language);
|
|
45
|
+
const transliterateWPMatches = text.match(transliterateWPKeywordRegex) || [];
|
|
46
|
+
combinedArray = combinedArray.concat(transliterateWPMatches);
|
|
47
|
+
}
|
|
48
|
+
return map(combinedArray, function (match) {
|
|
49
|
+
return stripSpaces(match);
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=matchTextWithTransliteration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"matchTextWithTransliteration.js","names":["map","addWordBoundary","stripSpaces","transliterate","transliterateWP","replaceTurkishIsMemoized","getLanguage","toRegex","keyword","language","RegExp","text","locale","keywordRegex","turkishMappings","x","join","matches","match","replace","transliterateKeyword","transliterateKeywordRegex","transliterateMatches","combinedArray","concat","transliterateWPKeyword","transliterateWPKeywordRegex","transliterateWPMatches"],"sources":["../../../../src/languageProcessing/helpers/match/matchTextWithTransliteration.js"],"sourcesContent":["import { map } from \"lodash\";\nimport addWordBoundary from \"../word/addWordboundary.js\";\nimport stripSpaces from \"../sanitize/stripSpaces.js\";\nimport transliterate from \"../transliterate/transliterate.js\";\nimport transliterateWP from \"../transliterate/transliterateWPstyle.js\";\nimport { replaceTurkishIsMemoized } from \"../transliterate/specialCharacterMappings\";\nimport { getLanguage } from \"../../index\";\n\n/**\n * Creates a regex from the keyword with included wordboundaries.\n *\n * @param {string} keyword The keyword to create a regex from.\n * @param {string} language The language used to determine the word boundary.\n *\n * @returns {RegExp} Regular expression of the keyword with word boundaries.\n */\nconst toRegex = function( keyword, language ) {\n\tkeyword = addWordBoundary( keyword, false, \"\", language );\n\treturn new RegExp( keyword, \"ig\" );\n};\n\n/**\n * Matches a string with and without transliteration.\n * @param {string} text The text to match.\n * @param {string} keyword The keyword to match in the text.\n * @param {string} locale The locale used for transliteration.\n * @returns {Array} All matches from the original as the transliterated text and keyword.\n */\nexport default function( text, keyword, locale ) {\n\tconst language = getLanguage( locale );\n\tlet keywordRegex = toRegex( keyword, language );\n\n\tif ( language === \"tr\" ) {\n\t\tconst turkishMappings = replaceTurkishIsMemoized( keyword );\n\t\tkeywordRegex = new RegExp( turkishMappings.map( x => addWordBoundary( x ) ).join( \"|\" ), \"ig\" );\n\t}\n\tconst matches = text.match( keywordRegex ) || [];\n\n\ttext = text.replace( keywordRegex, \"\" );\n\n\tconst transliterateKeyword = transliterate( keyword, locale );\n\tconst transliterateKeywordRegex = toRegex( transliterateKeyword, language );\n\tconst transliterateMatches = text.match( transliterateKeywordRegex ) || [];\n\tlet combinedArray = matches.concat( transliterateMatches );\n\n\tconst transliterateWPKeyword = transliterateWP( keyword, locale );\n\n\tif ( ! ( transliterateWPKeyword === transliterateKeyword ) ) {\n\t\tconst transliterateWPKeywordRegex = toRegex( transliterateWPKeyword, language );\n\t\tconst transliterateWPMatches = text.match( transliterateWPKeywordRegex ) || [];\n\n\t\tcombinedArray = combinedArray.concat( transliterateWPMatches );\n\t}\n\n\treturn map( combinedArray, function( match ) {\n\t\treturn stripSpaces( match );\n\t} );\n}\n"],"mappings":"AAAA,SAASA,GAAG,QAAQ,QAAQ;AAC5B,OAAOC,eAAe;AACtB,OAAOC,WAAW;AAClB,OAAOC,aAAa;AACpB,OAAOC,eAAe;AACtB,SAASC,wBAAwB;AACjC,SAASC,WAAW;;AAEpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,OAAO,GAAG,SAAAA,CAAUC,OAAO,EAAEC,QAAQ,EAAG;EAC7CD,OAAO,GAAGP,eAAe,CAAEO,OAAO,EAAE,KAAK,EAAE,EAAE,EAAEC,QAAS,CAAC;EACzD,OAAO,IAAIC,MAAM,CAAEF,OAAO,EAAE,IAAK,CAAC;AACnC,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,UAAUG,IAAI,EAAEH,OAAO,EAAEI,MAAM,EAAG;EAChD,MAAMH,QAAQ,GAAGH,WAAW,CAAEM,MAAO,CAAC;EACtC,IAAIC,YAAY,GAAGN,OAAO,CAAEC,OAAO,EAAEC,QAAS,CAAC;EAE/C,IAAKA,QAAQ,KAAK,IAAI,EAAG;IACxB,MAAMK,eAAe,GAAGT,wBAAwB,CAAEG,OAAQ,CAAC;IAC3DK,YAAY,GAAG,IAAIH,MAAM,CAAEI,eAAe,CAACd,GAAG,CAAEe,CAAC,IAAId,eAAe,CAAEc,CAAE,CAAE,CAAC,CAACC,IAAI,CAAE,GAAI,CAAC,EAAE,IAAK,CAAC;EAChG;EACA,MAAMC,OAAO,GAAGN,IAAI,CAACO,KAAK,CAAEL,YAAa,CAAC,IAAI,EAAE;EAEhDF,IAAI,GAAGA,IAAI,CAACQ,OAAO,CAAEN,YAAY,EAAE,EAAG,CAAC;EAEvC,MAAMO,oBAAoB,GAAGjB,aAAa,CAAEK,OAAO,EAAEI,MAAO,CAAC;EAC7D,MAAMS,yBAAyB,GAAGd,OAAO,CAAEa,oBAAoB,EAAEX,QAAS,CAAC;EAC3E,MAAMa,oBAAoB,GAAGX,IAAI,CAACO,KAAK,CAAEG,yBAA0B,CAAC,IAAI,EAAE;EAC1E,IAAIE,aAAa,GAAGN,OAAO,CAACO,MAAM,CAAEF,oBAAqB,CAAC;EAE1D,MAAMG,sBAAsB,GAAGrB,eAAe,CAAEI,OAAO,EAAEI,MAAO,CAAC;EAEjE,IAAK,EAAIa,sBAAsB,KAAKL,oBAAoB,CAAE,EAAG;IAC5D,MAAMM,2BAA2B,GAAGnB,OAAO,CAAEkB,sBAAsB,EAAEhB,QAAS,CAAC;IAC/E,MAAMkB,sBAAsB,GAAGhB,IAAI,CAACO,KAAK,CAAEQ,2BAA4B,CAAC,IAAI,EAAE;IAE9EH,aAAa,GAAGA,aAAa,CAACC,MAAM,CAAEG,sBAAuB,CAAC;EAC/D;EAEA,OAAO3B,GAAG,CAAEuB,aAAa,EAAE,UAAUL,KAAK,EAAG;IAC5C,OAAOhB,WAAW,CAAEgB,KAAM,CAAC;EAC5B,CAAE,CAAC;AACJ","ignoreList":[]}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/** @module stringProcessing/matchTextWithWord */
|
|
2
|
+
|
|
3
|
+
import stripSomeTags from "../sanitize/stripNonTextTags.js";
|
|
4
|
+
import stripSpaces from "../sanitize/stripSpaces.js";
|
|
5
|
+
import removePunctuation from "../sanitize/removePunctuation.js";
|
|
6
|
+
import { unifyAllSpaces as unifyWhitespace } from "../sanitize/unifyWhitespace.js";
|
|
7
|
+
import matchStringWithTransliteration from "./matchTextWithTransliteration.js";
|
|
8
|
+
import { normalize as normalizeQuotes } from "../sanitize/quotes.js";
|
|
9
|
+
import { map } from "lodash";
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Returns the number of matches in a given string
|
|
13
|
+
*
|
|
14
|
+
* @param {string} text The text to use for matching the wordToMatch.
|
|
15
|
+
* @param {string} wordToMatch The word to match in the text.
|
|
16
|
+
* @param {string} locale The locale used for transliteration.
|
|
17
|
+
* @param {function} matchWordCustomHelper The helper function to match word in text.
|
|
18
|
+
*
|
|
19
|
+
* @returns {Object} An array with all matches of the text, the number of the matches, and the lowest number of positions of the matches.
|
|
20
|
+
*/
|
|
21
|
+
export default function (text, wordToMatch, locale, matchWordCustomHelper) {
|
|
22
|
+
text = stripSomeTags(text);
|
|
23
|
+
text = unifyWhitespace(text);
|
|
24
|
+
text = normalizeQuotes(text);
|
|
25
|
+
wordToMatch = normalizeQuotes(wordToMatch);
|
|
26
|
+
let matches = matchWordCustomHelper ? matchWordCustomHelper(text, wordToMatch) : matchStringWithTransliteration(text, wordToMatch, locale);
|
|
27
|
+
matches = map(matches, function (keyword) {
|
|
28
|
+
return stripSpaces(removePunctuation(keyword));
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
// Create an array of positions of matches to determine where in the text the wordToMatch occurred first.
|
|
32
|
+
const positions = map(matches, function (keyword) {
|
|
33
|
+
return text.indexOf(keyword);
|
|
34
|
+
});
|
|
35
|
+
return {
|
|
36
|
+
count: matches.length,
|
|
37
|
+
matches: matches,
|
|
38
|
+
position: positions.length === 0 ? -1 : Math.min(...positions)
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=matchTextWithWord.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"matchTextWithWord.js","names":["stripSomeTags","stripSpaces","removePunctuation","unifyAllSpaces","unifyWhitespace","matchStringWithTransliteration","normalize","normalizeQuotes","map","text","wordToMatch","locale","matchWordCustomHelper","matches","keyword","positions","indexOf","count","length","position","Math","min"],"sources":["../../../../src/languageProcessing/helpers/match/matchTextWithWord.js"],"sourcesContent":["/** @module stringProcessing/matchTextWithWord */\n\nimport stripSomeTags from \"../sanitize/stripNonTextTags.js\";\nimport stripSpaces from \"../sanitize/stripSpaces.js\";\nimport removePunctuation from \"../sanitize/removePunctuation.js\";\nimport { unifyAllSpaces as unifyWhitespace } from \"../sanitize/unifyWhitespace.js\";\nimport matchStringWithTransliteration from \"./matchTextWithTransliteration.js\";\nimport { normalize as normalizeQuotes } from \"../sanitize/quotes.js\";\nimport { map } from \"lodash\";\n\n/**\n * Returns the number of matches in a given string\n *\n * @param {string} text The text to use for matching the wordToMatch.\n * @param {string} wordToMatch The word to match in the text.\n * @param {string} locale \t\t\t\tThe locale used for transliteration.\n * @param {function} matchWordCustomHelper \tThe helper function to match word in text.\n *\n * @returns {Object} An array with all matches of the text, the number of the matches, and the lowest number of positions of the matches.\n */\nexport default function( text, wordToMatch, locale, matchWordCustomHelper ) {\n\ttext = stripSomeTags( text );\n\ttext = unifyWhitespace( text );\n\ttext = normalizeQuotes( text );\n\n\twordToMatch = normalizeQuotes( wordToMatch );\n\tlet matches = matchWordCustomHelper\n\t\t? matchWordCustomHelper( text, wordToMatch )\n\t\t: matchStringWithTransliteration( text, wordToMatch, locale );\n\n\tmatches = map( matches, function( keyword ) {\n\t\treturn stripSpaces( removePunctuation( keyword ) );\n\t} );\n\n\t// Create an array of positions of matches to determine where in the text the wordToMatch occurred first.\n\tconst positions = map( matches, function( keyword ) {\n\t\treturn text.indexOf( keyword );\n\t} );\n\n\treturn {\n\t\tcount: matches.length,\n\t\tmatches: matches,\n\t\tposition: positions.length === 0 ? -1 : Math.min( ...positions ),\n\t};\n}\n"],"mappings":"AAAA;;AAEA,OAAOA,aAAa;AACpB,OAAOC,WAAW;AAClB,OAAOC,iBAAiB;AACxB,SAASC,cAAc,IAAIC,eAAe;AAC1C,OAAOC,8BAA8B;AACrC,SAASC,SAAS,IAAIC,eAAe;AACrC,SAASC,GAAG,QAAQ,QAAQ;;AAE5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,UAAUC,IAAI,EAAEC,WAAW,EAAEC,MAAM,EAAEC,qBAAqB,EAAG;EAC3EH,IAAI,GAAGT,aAAa,CAAES,IAAK,CAAC;EAC5BA,IAAI,GAAGL,eAAe,CAAEK,IAAK,CAAC;EAC9BA,IAAI,GAAGF,eAAe,CAAEE,IAAK,CAAC;EAE9BC,WAAW,GAAGH,eAAe,CAAEG,WAAY,CAAC;EAC5C,IAAIG,OAAO,GAAGD,qBAAqB,GAChCA,qBAAqB,CAAEH,IAAI,EAAEC,WAAY,CAAC,GAC1CL,8BAA8B,CAAEI,IAAI,EAAEC,WAAW,EAAEC,MAAO,CAAC;EAE9DE,OAAO,GAAGL,GAAG,CAAEK,OAAO,EAAE,UAAUC,OAAO,EAAG;IAC3C,OAAOb,WAAW,CAAEC,iBAAiB,CAAEY,OAAQ,CAAE,CAAC;EACnD,CAAE,CAAC;;EAEH;EACA,MAAMC,SAAS,GAAGP,GAAG,CAAEK,OAAO,EAAE,UAAUC,OAAO,EAAG;IACnD,OAAOL,IAAI,CAACO,OAAO,CAAEF,OAAQ,CAAC;EAC/B,CAAE,CAAC;EAEH,OAAO;IACNG,KAAK,EAAEJ,OAAO,CAACK,MAAM;IACrBL,OAAO,EAAEA,OAAO;IAChBM,QAAQ,EAAEJ,SAAS,CAACG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC,GAAGE,IAAI,CAACC,GAAG,CAAE,GAAGN,SAAU;EAChE,CAAC;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import matchTextWithTransliteration from "./matchTextWithTransliteration";
|
|
2
|
+
import splitIntoTokens from "../word/splitIntoTokens";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Tokenizes the word form of the keyphrase for exact matching. This function gets the word form and tokenizes it.
|
|
6
|
+
* This function assumes that if a keyphrase needs to be matched exactly, there will be only one word form.
|
|
7
|
+
* This is the result of how the focus keyphrase is processed in buildTopicStems.js in the buildStems function.
|
|
8
|
+
*
|
|
9
|
+
* @param {(string[])} wordForms The word forms to tokenize.
|
|
10
|
+
* @param {function} customSplitIntoTokensHelper A custom helper to split sentences into tokens.
|
|
11
|
+
*
|
|
12
|
+
* @returns {string[]} The tokenized word forms.
|
|
13
|
+
*/
|
|
14
|
+
export const tokenizeKeyphraseFormsForExactMatching = (wordForms, customSplitIntoTokensHelper) => {
|
|
15
|
+
// Tokenize word form of the keyphrase.
|
|
16
|
+
const wordFormText = wordForms[0];
|
|
17
|
+
return customSplitIntoTokensHelper ? customSplitIntoTokensHelper(wordFormText) : splitIntoTokens(wordFormText);
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Gets the exact matches of the keyphrase.
|
|
22
|
+
* Exact matching happens when the user puts the keyphrase in double quotes.
|
|
23
|
+
*
|
|
24
|
+
* @param {Sentence} sentence The sentence to match the word forms with.
|
|
25
|
+
* @param {string[]} wordForms The word forms to match.
|
|
26
|
+
* @param {string} locale The locale used in the analysis.
|
|
27
|
+
* @param {function} customSplitIntoTokensHelper A custom helper to split sentences into tokens.
|
|
28
|
+
*
|
|
29
|
+
* @returns {{count: number, matches: Token[]}} Object containing the number of the exact matches and the matched tokens.
|
|
30
|
+
*/
|
|
31
|
+
const findExactMatchKeyphraseInSentence = (sentence, wordForms, locale, customSplitIntoTokensHelper) => {
|
|
32
|
+
const result = {
|
|
33
|
+
count: 0,
|
|
34
|
+
matches: []
|
|
35
|
+
};
|
|
36
|
+
// Tokenize word forms of the keyphrase.
|
|
37
|
+
const keyphraseTokens = tokenizeKeyphraseFormsForExactMatching(wordForms, customSplitIntoTokensHelper);
|
|
38
|
+
const sentenceTokens = sentence.tokens;
|
|
39
|
+
|
|
40
|
+
// Initialize the index of the word token of the keyphrase.
|
|
41
|
+
let indexOfWordInKeyphrase = 0;
|
|
42
|
+
// Initialize the index of the word token of the sentence.
|
|
43
|
+
let indexOfWordInSentence = 0;
|
|
44
|
+
let currentMatch = [];
|
|
45
|
+
|
|
46
|
+
// Check if the tokenized word forms occur in the same order in the sentence tokens.
|
|
47
|
+
while (indexOfWordInSentence < sentenceTokens.length) {
|
|
48
|
+
// If the current sentence token matches the current word token of the keyphrase, add it to the current match.
|
|
49
|
+
const sentenceTokenText = sentenceTokens[indexOfWordInSentence].text;
|
|
50
|
+
const keyphraseTokenText = keyphraseTokens[indexOfWordInKeyphrase];
|
|
51
|
+
const foundMatches = matchTextWithTransliteration(sentenceTokenText.toLowerCase(), keyphraseTokenText.toLowerCase(), locale);
|
|
52
|
+
if (foundMatches.length > 0) {
|
|
53
|
+
currentMatch.push(sentenceTokens[indexOfWordInSentence]);
|
|
54
|
+
indexOfWordInKeyphrase++;
|
|
55
|
+
} else {
|
|
56
|
+
indexOfWordInKeyphrase = 0;
|
|
57
|
+
currentMatch = [];
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/*
|
|
61
|
+
* If the current match has the same length as the keyphrase tokens, the keyphrase forms have been matched.
|
|
62
|
+
* Add the current match to the matches array and reset the index of the word in keyphrase and the current match.
|
|
63
|
+
*/
|
|
64
|
+
if (currentMatch.length === keyphraseTokens.length) {
|
|
65
|
+
result.matches.push(...currentMatch);
|
|
66
|
+
result.count++;
|
|
67
|
+
indexOfWordInKeyphrase = 0;
|
|
68
|
+
currentMatch = [];
|
|
69
|
+
}
|
|
70
|
+
indexOfWordInSentence++;
|
|
71
|
+
}
|
|
72
|
+
return result;
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Matches a word form of the keyphrase with the tokens from the sentence.
|
|
77
|
+
*
|
|
78
|
+
* With this approach, we transliterate the word form of the keyphrase before matching it with the sentence tokens.
|
|
79
|
+
* However, we don't do the transliteration step for the sentence tokens.
|
|
80
|
+
* As a result, for example, the word form "acción" from the keyphrase will match the word "accion" in the sentence.
|
|
81
|
+
* But, the word form "accion" from the keyphrase will NOT match the word "acción" in the sentence.
|
|
82
|
+
*
|
|
83
|
+
* @param {Token[]} tokens The array of tokens to check.
|
|
84
|
+
* @param {string} wordForm The word form of the keyphrase.
|
|
85
|
+
* @param {string} locale The locale used in the analysis.
|
|
86
|
+
*
|
|
87
|
+
* @returns {Token[]} The array of the matched tokens.
|
|
88
|
+
*/
|
|
89
|
+
const matchWordFormInTokens = (tokens, wordForm, locale) => {
|
|
90
|
+
let matches = [];
|
|
91
|
+
tokens.forEach(token => {
|
|
92
|
+
const occurrence = matchTextWithTransliteration(token.text, wordForm, locale);
|
|
93
|
+
if (occurrence.length > 0) {
|
|
94
|
+
matches = matches.concat(token);
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
return matches;
|
|
98
|
+
};
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Finds keyphrase forms in a sentence.
|
|
102
|
+
*
|
|
103
|
+
* @param {Sentence|string} sentence The sentence to check.
|
|
104
|
+
* @param {string[]} wordForms The word forms of the keyphrase to check.
|
|
105
|
+
* @param {string} locale The locale used in the analysis.
|
|
106
|
+
* @param {function} matchWordCustomHelper Custom function to match a word form with sentence.
|
|
107
|
+
*
|
|
108
|
+
* @returns {{count: number, matches: (Token|string)[]}} Object containing the number of the matches and the matched tokens.
|
|
109
|
+
*/
|
|
110
|
+
const matchWordFormsInSentence = (sentence, wordForms, locale, matchWordCustomHelper) => {
|
|
111
|
+
const result = {
|
|
112
|
+
count: 0,
|
|
113
|
+
matches: []
|
|
114
|
+
};
|
|
115
|
+
wordForms.forEach(wordForm => {
|
|
116
|
+
let occurrences = [];
|
|
117
|
+
if (matchWordCustomHelper) {
|
|
118
|
+
occurrences = matchWordCustomHelper(sentence, wordForm);
|
|
119
|
+
} else {
|
|
120
|
+
const tokens = sentence.tokens.slice();
|
|
121
|
+
occurrences = matchWordFormInTokens(tokens, wordForm, locale);
|
|
122
|
+
}
|
|
123
|
+
result.count += occurrences.length;
|
|
124
|
+
result.matches = result.matches.concat(occurrences);
|
|
125
|
+
});
|
|
126
|
+
return result;
|
|
127
|
+
};
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* Matches the word forms of a keyphrase with a sentence object from the html parser.
|
|
131
|
+
*
|
|
132
|
+
* @param {Sentence|string} sentence The sentence to match against the word forms of a keyphrase.
|
|
133
|
+
* @param {string[]} wordForms The array of word forms of the keyphrase.
|
|
134
|
+
* E.g. If the keyphrase is "key word", then (if Premium is activated) this will be [ "key", "keys" ] OR [ "word", "words" ]
|
|
135
|
+
* The forms are retrieved higher up (among others in keywordCount.js) with researcher.getResearch( "morphology" ).
|
|
136
|
+
* @param {string} locale The locale used for transliteration.
|
|
137
|
+
* @param {function} matchWordCustomHelper Custom function to match a word form with sentence.
|
|
138
|
+
* @param {boolean} useExactMatching Whether to match the keyphrase forms exactly or not.
|
|
139
|
+
* Exact match is used when the keyphrase is enclosed in double quotes.
|
|
140
|
+
* @param {function} customSplitIntoTokensHelper A custom helper to split sentences into tokens.
|
|
141
|
+
*
|
|
142
|
+
* @returns {{count: number, matches: (Token|string)[]}} Object containing the number of the matches and the matched tokens.
|
|
143
|
+
*/
|
|
144
|
+
const matchWordFormsWithSentence = (sentence, wordForms, locale, matchWordCustomHelper, useExactMatching = false, customSplitIntoTokensHelper) => {
|
|
145
|
+
/*
|
|
146
|
+
* Only use `findExactMatchKeyphraseInSentence` when the custom helper is not available.
|
|
147
|
+
* When the custom helper is available, the step for the exact matching happens in the helper.
|
|
148
|
+
*/
|
|
149
|
+
if (useExactMatching && !matchWordCustomHelper) {
|
|
150
|
+
return findExactMatchKeyphraseInSentence(sentence, wordForms, locale, customSplitIntoTokensHelper);
|
|
151
|
+
}
|
|
152
|
+
return matchWordFormsInSentence(sentence, wordForms, locale, matchWordCustomHelper);
|
|
153
|
+
};
|
|
154
|
+
export default matchWordFormsWithSentence;
|
|
155
|
+
//# sourceMappingURL=matchWordFormsWithSentence.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"matchWordFormsWithSentence.js","names":["matchTextWithTransliteration","splitIntoTokens","tokenizeKeyphraseFormsForExactMatching","wordForms","customSplitIntoTokensHelper","wordFormText","findExactMatchKeyphraseInSentence","sentence","locale","result","count","matches","keyphraseTokens","sentenceTokens","tokens","indexOfWordInKeyphrase","indexOfWordInSentence","currentMatch","length","sentenceTokenText","text","keyphraseTokenText","foundMatches","toLowerCase","push","matchWordFormInTokens","wordForm","forEach","token","occurrence","concat","matchWordFormsInSentence","matchWordCustomHelper","occurrences","slice","matchWordFormsWithSentence","useExactMatching"],"sources":["../../../../src/languageProcessing/helpers/match/matchWordFormsWithSentence.js"],"sourcesContent":["import matchTextWithTransliteration from \"./matchTextWithTransliteration\";\nimport splitIntoTokens from \"../word/splitIntoTokens\";\n\n/**\n * Tokenizes the word form of the keyphrase for exact matching. This function gets the word form and tokenizes it.\n * This function assumes that if a keyphrase needs to be matched exactly, there will be only one word form.\n * This is the result of how the focus keyphrase is processed in buildTopicStems.js in the buildStems function.\n *\n * @param {(string[])} wordForms \t\t\t\t\tThe word forms to tokenize.\n * @param {function}\tcustomSplitIntoTokensHelper\tA custom helper to split sentences into tokens.\n *\n * @returns {string[]} The tokenized word forms.\n */\nexport const tokenizeKeyphraseFormsForExactMatching = ( wordForms, customSplitIntoTokensHelper ) => {\n\t// Tokenize word form of the keyphrase.\n\tconst wordFormText = wordForms[ 0 ];\n\n\treturn customSplitIntoTokensHelper ? customSplitIntoTokensHelper( wordFormText ) : splitIntoTokens( wordFormText );\n};\n\n/**\n * Gets the exact matches of the keyphrase.\n * Exact matching happens when the user puts the keyphrase in double quotes.\n *\n * @param {Sentence}\tsentence\t\t\t\t\tThe sentence to match the word forms with.\n * @param {string[]}\twordForms\t\t\t\t\tThe word forms to match.\n * @param {string}\t\tlocale\t\t\t\t\t\tThe locale used in the analysis.\n * @param {function}\tcustomSplitIntoTokensHelper\tA custom helper to split sentences into tokens.\n *\n * @returns {{count: number, matches: Token[]}} Object containing the number of the exact matches and the matched tokens.\n */\nconst findExactMatchKeyphraseInSentence = ( sentence, wordForms, locale, customSplitIntoTokensHelper ) => {\n\tconst result = {\n\t\tcount: 0,\n\t\tmatches: [],\n\t};\n\t// Tokenize word forms of the keyphrase.\n\tconst keyphraseTokens = tokenizeKeyphraseFormsForExactMatching( wordForms, customSplitIntoTokensHelper );\n\n\tconst sentenceTokens = sentence.tokens;\n\n\t// Initialize the index of the word token of the keyphrase.\n\tlet indexOfWordInKeyphrase = 0;\n\t// Initialize the index of the word token of the sentence.\n\tlet indexOfWordInSentence = 0;\n\tlet currentMatch = [];\n\n\t// Check if the tokenized word forms occur in the same order in the sentence tokens.\n\twhile ( indexOfWordInSentence < sentenceTokens.length ) {\n\t\t// If the current sentence token matches the current word token of the keyphrase, add it to the current match.\n\t\tconst sentenceTokenText = sentenceTokens[ indexOfWordInSentence ].text;\n\t\tconst keyphraseTokenText = keyphraseTokens[ indexOfWordInKeyphrase ];\n\n\t\tconst foundMatches = matchTextWithTransliteration( sentenceTokenText.toLowerCase(), keyphraseTokenText.toLowerCase(), locale );\n\n\t\tif ( foundMatches.length > 0 ) {\n\t\t\tcurrentMatch.push( sentenceTokens[ indexOfWordInSentence ] );\n\t\t\tindexOfWordInKeyphrase++;\n\t\t} else {\n\t\t\tindexOfWordInKeyphrase = 0;\n\t\t\tcurrentMatch = [];\n\t\t}\n\n\t\t/*\n\t\t * If the current match has the same length as the keyphrase tokens, the keyphrase forms have been matched.\n\t\t * Add the current match to the matches array and reset the index of the word in keyphrase and the current match.\n\t\t */\n\t\tif ( currentMatch.length === keyphraseTokens.length ) {\n\t\t\tresult.matches.push( ...currentMatch );\n\t\t\tresult.count++;\n\t\t\tindexOfWordInKeyphrase = 0;\n\t\t\tcurrentMatch = [];\n\t\t}\n\n\t\tindexOfWordInSentence++;\n\t}\n\treturn result;\n};\n\n/**\n * Matches a word form of the keyphrase with the tokens from the sentence.\n *\n * With this approach, we transliterate the word form of the keyphrase before matching it with the sentence tokens.\n * However, we don't do the transliteration step for the sentence tokens.\n * As a result, for example, the word form \"acción\" from the keyphrase will match the word \"accion\" in the sentence.\n * But, the word form \"accion\" from the keyphrase will NOT match the word \"acción\" in the sentence.\n *\n * @param {Token[]}\ttokens\t\tThe array of tokens to check.\n * @param {string}\twordForm\tThe word form of the keyphrase.\n * @param {string}\tlocale\t\tThe locale used in the analysis.\n *\n * @returns {Token[]}\tThe array of the matched tokens.\n */\nconst matchWordFormInTokens = ( tokens, wordForm, locale ) => {\n\tlet matches = [];\n\n\ttokens.forEach( token => {\n\t\tconst occurrence = matchTextWithTransliteration( token.text, wordForm, locale );\n\t\tif ( occurrence.length > 0 ) {\n\t\t\tmatches = matches.concat( token );\n\t\t}\n\t} );\n\n\treturn matches;\n};\n\n/**\n * Finds keyphrase forms in a sentence.\n *\n * @param {Sentence|string}\tsentence\t\t\t\tThe sentence to check.\n * @param {string[]}\t\twordForms\t\t\t\tThe word forms of the keyphrase to check.\n * @param {string}\t\t\tlocale\t\t\t\t\tThe locale used in the analysis.\n * @param {function}\t\tmatchWordCustomHelper\tCustom function to match a word form with sentence.\n *\n * @returns {{count: number, matches: (Token|string)[]}} Object containing the number of the matches and the matched tokens.\n */\nconst matchWordFormsInSentence = ( sentence, wordForms, locale, matchWordCustomHelper ) => {\n\tconst result = {\n\t\tcount: 0,\n\t\tmatches: [],\n\t};\n\n\twordForms.forEach( wordForm => {\n\t\tlet occurrences = [];\n\t\tif ( matchWordCustomHelper ) {\n\t\t\toccurrences = matchWordCustomHelper( sentence, wordForm );\n\t\t} else {\n\t\t\tconst tokens = sentence.tokens.slice();\n\t\t\toccurrences = matchWordFormInTokens( tokens, wordForm, locale );\n\t\t}\n\t\tresult.count += occurrences.length;\n\t\tresult.matches = result.matches.concat( occurrences );\n\t} );\n\n\treturn result;\n};\n\n/**\n * Matches the word forms of a keyphrase with a sentence object from the html parser.\n *\n * @param {Sentence|string}\tsentence\t\t\t\t\tThe sentence to match against the word forms of a keyphrase.\n * @param {string[]}\t\twordForms\t\t\t\t\tThe array of word forms of the keyphrase.\n * E.g. If the keyphrase is \"key word\", then (if Premium is activated) this will be [ \"key\", \"keys\" ] OR [ \"word\", \"words\" ]\n * The forms are retrieved higher up (among others in keywordCount.js) with researcher.getResearch( \"morphology\" ).\n * @param {string}\t\t\tlocale\t\t\t\t\t\tThe locale used for transliteration.\n * @param {function}\t\tmatchWordCustomHelper\t\tCustom function to match a word form with sentence.\n * @param {boolean}\t\t\tuseExactMatching\t\t\tWhether to match the keyphrase forms exactly or not.\n * \t\t\t\t\t\t\t\t\t\t\t\t\t\tExact match is used when the keyphrase is enclosed in double quotes.\n * @param {function}\t\tcustomSplitIntoTokensHelper\tA custom helper to split sentences into tokens.\n *\n * @returns {{count: number, matches: (Token|string)[]}} Object containing the number of the matches and the matched tokens.\n */\nconst matchWordFormsWithSentence = ( sentence, wordForms, locale, matchWordCustomHelper, useExactMatching = false, customSplitIntoTokensHelper ) => {\n\t/*\n\t * Only use `findExactMatchKeyphraseInSentence` when the custom helper is not available.\n\t * When the custom helper is available, the step for the exact matching happens in the helper.\n\t */\n\tif ( useExactMatching && ! matchWordCustomHelper ) {\n\t\treturn findExactMatchKeyphraseInSentence( sentence, wordForms, locale, customSplitIntoTokensHelper );\n\t}\n\treturn matchWordFormsInSentence( sentence, wordForms, locale, matchWordCustomHelper );\n};\n\nexport default matchWordFormsWithSentence;\n"],"mappings":"AAAA,OAAOA,4BAA4B;AACnC,OAAOC,eAAe;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,sCAAsC,GAAGA,CAAEC,SAAS,EAAEC,2BAA2B,KAAM;EACnG;EACA,MAAMC,YAAY,GAAGF,SAAS,CAAE,CAAC,CAAE;EAEnC,OAAOC,2BAA2B,GAAGA,2BAA2B,CAAEC,YAAa,CAAC,GAAGJ,eAAe,CAAEI,YAAa,CAAC;AACnH,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,iCAAiC,GAAGA,CAAEC,QAAQ,EAAEJ,SAAS,EAAEK,MAAM,EAAEJ,2BAA2B,KAAM;EACzG,MAAMK,MAAM,GAAG;IACdC,KAAK,EAAE,CAAC;IACRC,OAAO,EAAE;EACV,CAAC;EACD;EACA,MAAMC,eAAe,GAAGV,sCAAsC,CAAEC,SAAS,EAAEC,2BAA4B,CAAC;EAExG,MAAMS,cAAc,GAAGN,QAAQ,CAACO,MAAM;;EAEtC;EACA,IAAIC,sBAAsB,GAAG,CAAC;EAC9B;EACA,IAAIC,qBAAqB,GAAG,CAAC;EAC7B,IAAIC,YAAY,GAAG,EAAE;;EAErB;EACA,OAAQD,qBAAqB,GAAGH,cAAc,CAACK,MAAM,EAAG;IACvD;IACA,MAAMC,iBAAiB,GAAGN,cAAc,CAAEG,qBAAqB,CAAE,CAACI,IAAI;IACtE,MAAMC,kBAAkB,GAAGT,eAAe,CAAEG,sBAAsB,CAAE;IAEpE,MAAMO,YAAY,GAAGtB,4BAA4B,CAAEmB,iBAAiB,CAACI,WAAW,CAAC,CAAC,EAAEF,kBAAkB,CAACE,WAAW,CAAC,CAAC,EAAEf,MAAO,CAAC;IAE9H,IAAKc,YAAY,CAACJ,MAAM,GAAG,CAAC,EAAG;MAC9BD,YAAY,CAACO,IAAI,CAAEX,cAAc,CAAEG,qBAAqB,CAAG,CAAC;MAC5DD,sBAAsB,EAAE;IACzB,CAAC,MAAM;MACNA,sBAAsB,GAAG,CAAC;MAC1BE,YAAY,GAAG,EAAE;IAClB;;IAEA;AACF;AACA;AACA;IACE,IAAKA,YAAY,CAACC,MAAM,KAAKN,eAAe,CAACM,MAAM,EAAG;MACrDT,MAAM,CAACE,OAAO,CAACa,IAAI,CAAE,GAAGP,YAAa,CAAC;MACtCR,MAAM,CAACC,KAAK,EAAE;MACdK,sBAAsB,GAAG,CAAC;MAC1BE,YAAY,GAAG,EAAE;IAClB;IAEAD,qBAAqB,EAAE;EACxB;EACA,OAAOP,MAAM;AACd,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMgB,qBAAqB,GAAGA,CAAEX,MAAM,EAAEY,QAAQ,EAAElB,MAAM,KAAM;EAC7D,IAAIG,OAAO,GAAG,EAAE;EAEhBG,MAAM,CAACa,OAAO,CAAEC,KAAK,IAAI;IACxB,MAAMC,UAAU,GAAG7B,4BAA4B,CAAE4B,KAAK,CAACR,IAAI,EAAEM,QAAQ,EAAElB,MAAO,CAAC;IAC/E,IAAKqB,UAAU,CAACX,MAAM,GAAG,CAAC,EAAG;MAC5BP,OAAO,GAAGA,OAAO,CAACmB,MAAM,CAAEF,KAAM,CAAC;IAClC;EACD,CAAE,CAAC;EAEH,OAAOjB,OAAO;AACf,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMoB,wBAAwB,GAAGA,CAAExB,QAAQ,EAAEJ,SAAS,EAAEK,MAAM,EAAEwB,qBAAqB,KAAM;EAC1F,MAAMvB,MAAM,GAAG;IACdC,KAAK,EAAE,CAAC;IACRC,OAAO,EAAE;EACV,CAAC;EAEDR,SAAS,CAACwB,OAAO,CAAED,QAAQ,IAAI;IAC9B,IAAIO,WAAW,GAAG,EAAE;IACpB,IAAKD,qBAAqB,EAAG;MAC5BC,WAAW,GAAGD,qBAAqB,CAAEzB,QAAQ,EAAEmB,QAAS,CAAC;IAC1D,CAAC,MAAM;MACN,MAAMZ,MAAM,GAAGP,QAAQ,CAACO,MAAM,CAACoB,KAAK,CAAC,CAAC;MACtCD,WAAW,GAAGR,qBAAqB,CAAEX,MAAM,EAAEY,QAAQ,EAAElB,MAAO,CAAC;IAChE;IACAC,MAAM,CAACC,KAAK,IAAIuB,WAAW,CAACf,MAAM;IAClCT,MAAM,CAACE,OAAO,GAAGF,MAAM,CAACE,OAAO,CAACmB,MAAM,CAAEG,WAAY,CAAC;EACtD,CAAE,CAAC;EAEH,OAAOxB,MAAM;AACd,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM0B,0BAA0B,GAAGA,CAAE5B,QAAQ,EAAEJ,SAAS,EAAEK,MAAM,EAAEwB,qBAAqB,EAAEI,gBAAgB,GAAG,KAAK,EAAEhC,2BAA2B,KAAM;EACnJ;AACD;AACA;AACA;EACC,IAAKgC,gBAAgB,IAAI,CAAEJ,qBAAqB,EAAG;IAClD,OAAO1B,iCAAiC,CAAEC,QAAQ,EAAEJ,SAAS,EAAEK,MAAM,EAAEJ,2BAA4B,CAAC;EACrG;EACA,OAAO2B,wBAAwB,CAAExB,QAAQ,EAAEJ,SAAS,EAAEK,MAAM,EAAEwB,qBAAsB,CAAC;AACtF,CAAC;AAED,eAAeG,0BAA0B","ignoreList":[]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import isDoubleQuoted from "./isDoubleQuoted";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Checks if exact match functionality is requested by enclosing the keyphrase in double quotation marks.
|
|
5
|
+
*
|
|
6
|
+
* @param {string} keyphrase The keyphrase to check. This must be the keyphrase accessed directly from the Paper.
|
|
7
|
+
*
|
|
8
|
+
* @returns {Object} Whether the exact match functionality is requested and the keyword stripped from double quotes.
|
|
9
|
+
*/
|
|
10
|
+
export default function processExactMatchRequest(keyphrase) {
|
|
11
|
+
const exactMatchRequest = {
|
|
12
|
+
exactMatchRequested: false,
|
|
13
|
+
keyphrase: keyphrase
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
// Check if only exact match processing is requested by the user. If so, strip the quotation marks from the keyphrase.
|
|
17
|
+
if (isDoubleQuoted(keyphrase)) {
|
|
18
|
+
exactMatchRequest.keyphrase = keyphrase.substring(1, keyphrase.length - 1);
|
|
19
|
+
exactMatchRequest.exactMatchRequested = true;
|
|
20
|
+
}
|
|
21
|
+
return exactMatchRequest;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=processExactMatchRequest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"processExactMatchRequest.js","names":["isDoubleQuoted","processExactMatchRequest","keyphrase","exactMatchRequest","exactMatchRequested","substring","length"],"sources":["../../../../src/languageProcessing/helpers/match/processExactMatchRequest.js"],"sourcesContent":["import isDoubleQuoted from \"./isDoubleQuoted\";\n\n/**\n * Checks if exact match functionality is requested by enclosing the keyphrase in double quotation marks.\n *\n * @param {string} keyphrase The keyphrase to check. This must be the keyphrase accessed directly from the Paper.\n *\n * @returns {Object} Whether the exact match functionality is requested and the keyword stripped from double quotes.\n */\nexport default function processExactMatchRequest( keyphrase ) {\n\tconst exactMatchRequest = { exactMatchRequested: false, keyphrase: keyphrase };\n\n\t// Check if only exact match processing is requested by the user. If so, strip the quotation marks from the keyphrase.\n\tif ( isDoubleQuoted( keyphrase ) ) {\n\t\texactMatchRequest.keyphrase = keyphrase.substring( 1, keyphrase.length - 1 );\n\t\texactMatchRequest.exactMatchRequested = true;\n\t}\n\n\treturn exactMatchRequest;\n}\n"],"mappings":"AAAA,OAAOA,cAAc;;AAErB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,wBAAwBA,CAAEC,SAAS,EAAG;EAC7D,MAAMC,iBAAiB,GAAG;IAAEC,mBAAmB,EAAE,KAAK;IAAEF,SAAS,EAAEA;EAAU,CAAC;;EAE9E;EACA,IAAKF,cAAc,CAAEE,SAAU,CAAC,EAAG;IAClCC,iBAAiB,CAACD,SAAS,GAAGA,SAAS,CAACG,SAAS,CAAE,CAAC,EAAEH,SAAS,CAACI,MAAM,GAAG,CAAE,CAAC;IAC5EH,iBAAiB,CAACC,mBAAmB,GAAG,IAAI;EAC7C;EAEA,OAAOD,iBAAiB;AACzB","ignoreList":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base stemmer that does not stem.
|
|
3
|
+
* This is exported to allow for comparing if a stemmer is the base stemmer.
|
|
4
|
+
*
|
|
5
|
+
* @param {string} word The word to stem.
|
|
6
|
+
*
|
|
7
|
+
* @returns {string} The stemmed word.
|
|
8
|
+
*/
|
|
9
|
+
export default function baseStemmer(word) {
|
|
10
|
+
return word;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=baseStemmer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"baseStemmer.js","names":["baseStemmer","word"],"sources":["../../../../src/languageProcessing/helpers/morphology/baseStemmer.js"],"sourcesContent":["/**\n * Base stemmer that does not stem.\n * This is exported to allow for comparing if a stemmer is the base stemmer.\n *\n * @param {string} word The word to stem.\n *\n * @returns {string} The stemmed word.\n */\nexport default function baseStemmer( word ) {\n\treturn word;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASA,WAAWA,CAAEC,IAAI,EAAG;EAC3C,OAAOA,IAAI;AACZ","ignoreList":[]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks if the input word qualifies for the input regex and if so builds a required form.
|
|
3
|
+
* This function is used for other more specific functions.
|
|
4
|
+
*
|
|
5
|
+
* @param {string} word The word to build forms for.
|
|
6
|
+
* @param {Array} regexes The regex-based array of rules to compare the word against.
|
|
7
|
+
*
|
|
8
|
+
* @returns {string} The newly built form of the word.
|
|
9
|
+
*/
|
|
10
|
+
export default function buildFormRule(word, regexes) {
|
|
11
|
+
if (regexes.includes(null)) {
|
|
12
|
+
return word;
|
|
13
|
+
}
|
|
14
|
+
for (let i = 0; i < regexes.length; i++) {
|
|
15
|
+
if (regexes[i].reg.test(word) === true) {
|
|
16
|
+
return word.replace(regexes[i].reg, regexes[i].repl);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=buildFormRule.js.map
|