axyseo 2.0.0-alpha.0.0.4 → 2.0.0-alpha.0.0.6
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/package.json +5 -2
- package/.browserslistrc +0 -1
- package/.gitattributes +0 -1
- package/babel.config.js +0 -3
- package/eslint.config.mjs +0 -119
- package/src/bundledPlugins/index.js +0 -5
- package/src/bundledPlugins/previouslyUsedKeywords.js +0 -192
- package/src/config/diacritics.js +0 -106
- package/src/config/getTransliterations.js +0 -1447
- package/src/config/transliterationsWPstyle.js +0 -774
- package/src/config/wordBoundaries.js +0 -23
- package/src/config/wordBoundariesWithoutPunctuation.js +0 -9
- package/src/const/analysis.js +0 -41
- package/src/errors/invalidType.js +0 -14
- package/src/errors/missingArgument.js +0 -14
- package/src/helpers/createMeasurementElement.js +0 -40
- package/src/helpers/domManipulation.js +0 -65
- package/src/helpers/errors.js +0 -26
- package/src/helpers/factory.js +0 -219
- package/src/helpers/formatNumber.js +0 -12
- package/src/helpers/formatString.js +0 -33
- package/src/helpers/getLanguagesWithWordComplexity.js +0 -8
- package/src/helpers/getLanguagesWithWordFormSupport.js +0 -11
- package/src/helpers/getWordComplexityConfig.js +0 -20
- package/src/helpers/getWordComplexityHelper.js +0 -20
- package/src/helpers/htmlEntities.js +0 -41
- package/src/helpers/includesAny.js +0 -19
- package/src/helpers/index.js +0 -127
- package/src/helpers/shortlinker/Shortlinker.js +0 -75
- package/src/helpers/shortlinker/index.js +0 -1
- package/src/helpers/shortlinker/singleton.js +0 -68
- package/src/helpers/types.js +0 -34
- package/src/index.js +0 -60
- package/src/languageProcessing/AbstractResearcher.js +0 -366
- package/src/languageProcessing/helpers/highlighting/getMarkingsInSentence.js +0 -125
- package/src/languageProcessing/helpers/html/getFieldsToMark.js +0 -29
- package/src/languageProcessing/helpers/html/getSubheadingTexts.js +0 -47
- package/src/languageProcessing/helpers/html/getSubheadings.js +0 -95
- package/src/languageProcessing/helpers/html/html.js +0 -176
- package/src/languageProcessing/helpers/html/htmlParser.js +0 -145
- package/src/languageProcessing/helpers/html/matchParagraphs.js +0 -62
- package/src/languageProcessing/helpers/html/normalizeHTML.js +0 -16
- package/src/languageProcessing/helpers/image/getAltAttribute.js +0 -20
- package/src/languageProcessing/helpers/image/getImagesInTree.js +0 -16
- package/src/languageProcessing/helpers/image/imageInText.js +0 -19
- package/src/languageProcessing/helpers/index.js +0 -12
- package/src/languageProcessing/helpers/language/getLanguage.js +0 -9
- package/src/languageProcessing/helpers/link/checkNofollow.js +0 -38
- package/src/languageProcessing/helpers/link/getAnchorsFromText.js +0 -32
- package/src/languageProcessing/helpers/link/getLinkType.js +0 -32
- package/src/languageProcessing/helpers/match/findKeywordFormsInString.js +0 -101
- package/src/languageProcessing/helpers/match/isDoubleQuoted.js +0 -13
- package/src/languageProcessing/helpers/match/matchTextWithArray.js +0 -36
- package/src/languageProcessing/helpers/match/matchTextWithTransliteration.js +0 -58
- package/src/languageProcessing/helpers/match/matchTextWithWord.js +0 -45
- package/src/languageProcessing/helpers/match/matchWordFormsWithSentence.js +0 -164
- package/src/languageProcessing/helpers/match/processExactMatchRequest.js +0 -20
- package/src/languageProcessing/helpers/morphology/baseStemmer.js +0 -11
- package/src/languageProcessing/helpers/morphology/buildFormRule.js +0 -19
- package/src/languageProcessing/helpers/morphology/buildTopicStems.js +0 -169
- package/src/languageProcessing/helpers/morphology/createRulesFromArrays.js +0 -45
- package/src/languageProcessing/helpers/morphology/exceptionListHelpers.js +0 -65
- package/src/languageProcessing/helpers/morphology/findMatchingEndingInArray.js +0 -24
- package/src/languageProcessing/helpers/morphology/flattenSortLength.js +0 -14
- package/src/languageProcessing/helpers/morphology/getAllWordsFromPaper.js +0 -39
- package/src/languageProcessing/helpers/morphology/regexHelpers.js +0 -44
- package/src/languageProcessing/helpers/morphology/stemHelpers.js +0 -38
- package/src/languageProcessing/helpers/morphology/stemPrefixedFunctionWords.js +0 -31
- package/src/languageProcessing/helpers/passiveVoice/periphrastic/directPrecedenceException.js +0 -36
- package/src/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/getClausesSplitOnStopWords.js +0 -113
- package/src/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/nonDirectParticiplePrecedenceException.js +0 -45
- package/src/languageProcessing/helpers/passiveVoice/periphrastic/getClauses.js +0 -231
- package/src/languageProcessing/helpers/passiveVoice/periphrastic/getIndicesWithRegex.js +0 -20
- package/src/languageProcessing/helpers/passiveVoice/periphrastic/matchRegularParticiples.js +0 -23
- package/src/languageProcessing/helpers/passiveVoice/periphrastic/precedenceException.js +0 -40
- package/src/languageProcessing/helpers/prominentWords/determineProminentWords.js +0 -238
- package/src/languageProcessing/helpers/regex/createRegexFromArray.js +0 -35
- package/src/languageProcessing/helpers/regex/createRegexFromDoubleArray.js +0 -34
- package/src/languageProcessing/helpers/regex/createWordRegex.js +0 -30
- package/src/languageProcessing/helpers/regex/matchStringWithRegex.js +0 -19
- package/src/languageProcessing/helpers/regex/searchAndReplaceWithOneRegex.js +0 -14
- package/src/languageProcessing/helpers/sanitize/doubleQuotes.js +0 -12
- package/src/languageProcessing/helpers/sanitize/filterShortcodesFromTree.js +0 -131
- package/src/languageProcessing/helpers/sanitize/mergeListItems.js +0 -24
- package/src/languageProcessing/helpers/sanitize/parseSynonyms.js +0 -20
- package/src/languageProcessing/helpers/sanitize/quotes.js +0 -46
- package/src/languageProcessing/helpers/sanitize/removeEmailAddresses.js +0 -12
- package/src/languageProcessing/helpers/sanitize/removePunctuation.js +0 -64
- package/src/languageProcessing/helpers/sanitize/removePunctuationExceptQuotes.js +0 -18
- package/src/languageProcessing/helpers/sanitize/removeSentenceTerminators.js +0 -13
- package/src/languageProcessing/helpers/sanitize/removeURLs.js +0 -13
- package/src/languageProcessing/helpers/sanitize/sanitizeLineBreakTag.js +0 -11
- package/src/languageProcessing/helpers/sanitize/sanitizeString.js +0 -18
- package/src/languageProcessing/helpers/sanitize/stripHTMLTags.js +0 -57
- package/src/languageProcessing/helpers/sanitize/stripNonTextTags.js +0 -15
- package/src/languageProcessing/helpers/sanitize/stripNumbers.js +0 -21
- package/src/languageProcessing/helpers/sanitize/stripSpaces.js +0 -23
- package/src/languageProcessing/helpers/sanitize/stripWordBoundaries.js +0 -65
- package/src/languageProcessing/helpers/sanitize/unifyWhitespace.js +0 -61
- package/src/languageProcessing/helpers/sentence/SentenceTokenizer.js +0 -640
- package/src/languageProcessing/helpers/sentence/countSentences.js +0 -20
- package/src/languageProcessing/helpers/sentence/getSentences.js +0 -65
- package/src/languageProcessing/helpers/sentence/getSentencesFromTree.js +0 -55
- package/src/languageProcessing/helpers/sentence/memoizedSentenceTokenizer.js +0 -28
- package/src/languageProcessing/helpers/sentence/sentencesLength.js +0 -31
- package/src/languageProcessing/helpers/syllables/DeviationFragment.js +0 -112
- package/src/languageProcessing/helpers/syllables/countSyllables.js +0 -182
- package/src/languageProcessing/helpers/syllables/syllableCountIterator.js +0 -56
- package/src/languageProcessing/helpers/syllables/syllableCountStep.js +0 -68
- package/src/languageProcessing/helpers/transform/transformWordsWithHyphens.js +0 -17
- package/src/languageProcessing/helpers/transliterate/replaceDiacritics.js +0 -22
- package/src/languageProcessing/helpers/transliterate/specialCharacterMappings.js +0 -214
- package/src/languageProcessing/helpers/transliterate/transliterate.js +0 -20
- package/src/languageProcessing/helpers/transliterate/transliterateWPstyle.js +0 -21
- package/src/languageProcessing/helpers/url/parseSlug.js +0 -10
- package/src/languageProcessing/helpers/url/url.js +0 -172
- package/src/languageProcessing/helpers/word/addWordboundary.js +0 -37
- package/src/languageProcessing/helpers/word/areWordsInSentence.js +0 -16
- package/src/languageProcessing/helpers/word/countMetaDescriptionLength.js +0 -18
- package/src/languageProcessing/helpers/word/countWords.js +0 -14
- package/src/languageProcessing/helpers/word/createPunctuationTokens.js +0 -42
- package/src/languageProcessing/helpers/word/filterWordsFromArray.js +0 -15
- package/src/languageProcessing/helpers/word/followsIndex.js +0 -25
- package/src/languageProcessing/helpers/word/getAllWordsFromTree.js +0 -23
- package/src/languageProcessing/helpers/word/getWords.js +0 -43
- package/src/languageProcessing/helpers/word/includesIndex.js +0 -30
- package/src/languageProcessing/helpers/word/indices.js +0 -146
- package/src/languageProcessing/helpers/word/markWordsInSentences.js +0 -173
- package/src/languageProcessing/helpers/word/matchWordInSentence.js +0 -61
- package/src/languageProcessing/helpers/word/splitIntoTokens.js +0 -46
- package/src/languageProcessing/index.js +0 -91
- package/src/languageProcessing/languages/_default/Researcher.js +0 -34
- package/src/languageProcessing/languages/_default/helpers/getStemmer.js +0 -11
- package/src/languageProcessing/languages/ar/Researcher.js +0 -46
- package/src/languageProcessing/languages/ar/config/firstWordExceptions.js +0 -14
- package/src/languageProcessing/languages/ar/config/functionWords.js +0 -329
- package/src/languageProcessing/languages/ar/config/internal/passiveVerbsWithLongVowel.js +0 -570
- package/src/languageProcessing/languages/ar/config/prefixedFunctionWords.js +0 -5
- package/src/languageProcessing/languages/ar/config/transitionWords.js +0 -19
- package/src/languageProcessing/languages/ar/config/twoPartTransitionWords.js +0 -7
- package/src/languageProcessing/languages/ar/helpers/createBasicWordForms.js +0 -32
- package/src/languageProcessing/languages/ar/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/ar/helpers/internal/stem.js +0 -632
- package/src/languageProcessing/languages/ar/helpers/isPassiveSentence.js +0 -33
- package/src/languageProcessing/languages/ca/Researcher.js +0 -43
- package/src/languageProcessing/languages/ca/config/sentenceLength.js +0 -3
- package/src/languageProcessing/languages/ca/config/transitionWords.js +0 -31
- package/src/languageProcessing/languages/ca/config/twoPartTransitionWords.js +0 -7
- package/src/languageProcessing/languages/ca/helpers/getStemmer.js +0 -11
- package/src/languageProcessing/languages/cs/Researcher.js +0 -44
- package/src/languageProcessing/languages/cs/config/firstWordExceptions.js +0 -15
- package/src/languageProcessing/languages/cs/config/functionWords.js +0 -121
- package/src/languageProcessing/languages/cs/config/internal/passiveVoiceAuxiliaries.js +0 -38
- package/src/languageProcessing/languages/cs/config/internal/passiveVoiceEndings.js +0 -54
- package/src/languageProcessing/languages/cs/config/stopWords.js +0 -42
- package/src/languageProcessing/languages/cs/config/transitionWords.js +0 -26
- package/src/languageProcessing/languages/cs/config/twoPartTransitionWords.js +0 -8
- package/src/languageProcessing/languages/cs/helpers/getClauses.js +0 -26
- package/src/languageProcessing/languages/cs/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/cs/helpers/internal/getParticiples.js +0 -16
- package/src/languageProcessing/languages/cs/helpers/internal/stem.js +0 -499
- package/src/languageProcessing/languages/cs/values/Clause.js +0 -34
- package/src/languageProcessing/languages/de/Researcher.js +0 -52
- package/src/languageProcessing/languages/de/config/firstWordExceptions.js +0 -17
- package/src/languageProcessing/languages/de/config/functionWords.js +0 -303
- package/src/languageProcessing/languages/de/config/internal/exceptionsParticiplesActive.js +0 -2231
- package/src/languageProcessing/languages/de/config/internal/passiveVoiceAuxiliaries.js +0 -96
- package/src/languageProcessing/languages/de/config/internal/passiveVoiceIrregulars.js +0 -368
- package/src/languageProcessing/languages/de/config/internal/passiveVoiceRegex.js +0 -72
- package/src/languageProcessing/languages/de/config/keyphraseLength.js +0 -11
- package/src/languageProcessing/languages/de/config/stopWords.js +0 -67
- package/src/languageProcessing/languages/de/config/syllables.json +0 -460
- package/src/languageProcessing/languages/de/config/transitionWords.js +0 -31
- package/src/languageProcessing/languages/de/config/twoPartTransitionWords.js +0 -12
- package/src/languageProcessing/languages/de/config/wordComplexity.js +0 -4
- package/src/languageProcessing/languages/de/helpers/calculateFleschReadingScore.js +0 -18
- package/src/languageProcessing/languages/de/helpers/checkIfWordIsComplex.js +0 -40
- package/src/languageProcessing/languages/de/helpers/checkIfWordIsFunction.js +0 -15
- package/src/languageProcessing/languages/de/helpers/getClauses.js +0 -25
- package/src/languageProcessing/languages/de/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/de/helpers/internal/SentenceTokenizer.js +0 -31
- package/src/languageProcessing/languages/de/helpers/internal/detectAndStemRegularParticiple.js +0 -128
- package/src/languageProcessing/languages/de/helpers/internal/determineStem.js +0 -128
- package/src/languageProcessing/languages/de/helpers/internal/getParticiples.js +0 -40
- package/src/languageProcessing/languages/de/helpers/internal/stem.js +0 -215
- package/src/languageProcessing/languages/de/helpers/memoizedSentenceTokenizer.js +0 -28
- package/src/languageProcessing/languages/de/values/Clause.js +0 -85
- package/src/languageProcessing/languages/el/Researcher.js +0 -46
- package/src/languageProcessing/languages/el/config/firstWordExceptions.js +0 -47
- package/src/languageProcessing/languages/el/config/functionWords.js +0 -116
- package/src/languageProcessing/languages/el/config/internal/auxiliaries.js +0 -19
- package/src/languageProcessing/languages/el/config/internal/morphologicalPassiveSuffixes.js +0 -87
- package/src/languageProcessing/languages/el/config/internal/nonPassiveVerbStems.js +0 -138
- package/src/languageProcessing/languages/el/config/stopWords.js +0 -854
- package/src/languageProcessing/languages/el/config/transitionWords.js +0 -26
- package/src/languageProcessing/languages/el/config/twoPartTransitionWords.js +0 -10
- package/src/languageProcessing/languages/el/helpers/getClauses.js +0 -25
- package/src/languageProcessing/languages/el/helpers/getStemmer.js +0 -21
- package/src/languageProcessing/languages/el/helpers/internal/getParticiples.js +0 -20
- package/src/languageProcessing/languages/el/helpers/internal/stem.js +0 -368
- package/src/languageProcessing/languages/el/helpers/isPassiveSentence.js +0 -38
- package/src/languageProcessing/languages/el/values/Clause.js +0 -37
- package/src/languageProcessing/languages/en/Researcher.js +0 -46
- package/src/languageProcessing/languages/en/config/abbreviations.js +0 -55
- package/src/languageProcessing/languages/en/config/firstWordExceptions.js +0 -14
- package/src/languageProcessing/languages/en/config/functionWords.js +0 -186
- package/src/languageProcessing/languages/en/config/internal/passiveVoiceAuxiliaries.js +0 -44
- package/src/languageProcessing/languages/en/config/internal/passiveVoiceIrregulars.js +0 -354
- package/src/languageProcessing/languages/en/config/internal/passiveVoiceNonVerbEndingEd.js +0 -3047
- package/src/languageProcessing/languages/en/config/regularParticiplesRegex.js +0 -5
- package/src/languageProcessing/languages/en/config/stopWords.js +0 -52
- package/src/languageProcessing/languages/en/config/syllables.json +0 -86
- package/src/languageProcessing/languages/en/config/transitionWords.js +0 -48
- package/src/languageProcessing/languages/en/config/twoPartTransitionWords.js +0 -7
- package/src/languageProcessing/languages/en/config/wordComplexity.js +0 -5
- package/src/languageProcessing/languages/en/helpers/calculateFleschReadingScore.js +0 -18
- package/src/languageProcessing/languages/en/helpers/checkIfWordIsComplex.js +0 -43
- package/src/languageProcessing/languages/en/helpers/getClauses.js +0 -49
- package/src/languageProcessing/languages/en/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/en/helpers/internal/determineStem.js +0 -178
- package/src/languageProcessing/languages/en/helpers/internal/getAdjectiveStem.js +0 -162
- package/src/languageProcessing/languages/en/helpers/internal/getParticiples.js +0 -25
- package/src/languageProcessing/languages/en/helpers/internal/getVerbStem.js +0 -237
- package/src/languageProcessing/languages/en/values/Clause.js +0 -68
- package/src/languageProcessing/languages/es/Researcher.js +0 -48
- package/src/languageProcessing/languages/es/config/firstWordExceptions.js +0 -16
- package/src/languageProcessing/languages/es/config/functionWords.js +0 -321
- package/src/languageProcessing/languages/es/config/internal/passiveVoiceAuxiliaries.js +0 -60
- package/src/languageProcessing/languages/es/config/internal/passiveVoiceParticiples.js +0 -7327
- package/src/languageProcessing/languages/es/config/sentenceLength.js +0 -3
- package/src/languageProcessing/languages/es/config/stopWords.js +0 -33
- package/src/languageProcessing/languages/es/config/syllables.json +0 -176
- package/src/languageProcessing/languages/es/config/transitionWords.js +0 -40
- package/src/languageProcessing/languages/es/config/twoPartTransitionWords.js +0 -10
- package/src/languageProcessing/languages/es/config/wordComplexity.js +0 -4
- package/src/languageProcessing/languages/es/helpers/calculateFleschReadingScore.js +0 -18
- package/src/languageProcessing/languages/es/helpers/checkIfWordIsComplex.js +0 -56
- package/src/languageProcessing/languages/es/helpers/getClauses.js +0 -29
- package/src/languageProcessing/languages/es/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/es/helpers/internal/checkVerbStemModifications.js +0 -41
- package/src/languageProcessing/languages/es/helpers/internal/getParticiples.js +0 -35
- package/src/languageProcessing/languages/es/helpers/internal/stem.js +0 -793
- package/src/languageProcessing/languages/es/values/Clause.js +0 -47
- package/src/languageProcessing/languages/fa/Researcher.js +0 -47
- package/src/languageProcessing/languages/fa/config/firstWordExceptions.js +0 -12
- package/src/languageProcessing/languages/fa/config/functionWords.js +0 -122
- package/src/languageProcessing/languages/fa/config/internal/participles.js +0 -1429
- package/src/languageProcessing/languages/fa/config/sentenceLength.js +0 -3
- package/src/languageProcessing/languages/fa/config/transitionWords.js +0 -20
- package/src/languageProcessing/languages/fa/config/twoPartTransitionWords.js +0 -9
- package/src/languageProcessing/languages/fa/helpers/createBasicWordForms.js +0 -97
- package/src/languageProcessing/languages/fa/helpers/getStemmer.js +0 -13
- package/src/languageProcessing/languages/fa/helpers/isPassiveSentence.js +0 -14
- package/src/languageProcessing/languages/fr/Researcher.js +0 -46
- package/src/languageProcessing/languages/fr/config/firstWordExceptions.js +0 -16
- package/src/languageProcessing/languages/fr/config/functionWords.js +0 -281
- package/src/languageProcessing/languages/fr/config/internal/exceptionsParticiplesActive.js +0 -1510
- package/src/languageProcessing/languages/fr/config/internal/passiveVoiceAuxiliaries.js +0 -108
- package/src/languageProcessing/languages/fr/config/internal/passiveVoiceIrregulars.js +0 -565
- package/src/languageProcessing/languages/fr/config/stopWords.js +0 -119
- package/src/languageProcessing/languages/fr/config/syllables.json +0 -1426
- package/src/languageProcessing/languages/fr/config/transitionWords.js +0 -59
- package/src/languageProcessing/languages/fr/config/twoPartTransitionWords.js +0 -15
- package/src/languageProcessing/languages/fr/config/wordComplexity.js +0 -4
- package/src/languageProcessing/languages/fr/helpers/calculateFleschReadingScore.js +0 -18
- package/src/languageProcessing/languages/fr/helpers/checkIfWordIsComplex.js +0 -67
- package/src/languageProcessing/languages/fr/helpers/getClauses.js +0 -34
- package/src/languageProcessing/languages/fr/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/fr/helpers/internal/getParticiples.js +0 -72
- package/src/languageProcessing/languages/fr/helpers/internal/stem.js +0 -633
- package/src/languageProcessing/languages/fr/values/Clause.js +0 -96
- package/src/languageProcessing/languages/he/Researcher.js +0 -50
- package/src/languageProcessing/languages/he/config/firstWordExceptions.js +0 -13
- package/src/languageProcessing/languages/he/config/functionWords.js +0 -564
- package/src/languageProcessing/languages/he/config/internal/regularRootsHufal.js +0 -186
- package/src/languageProcessing/languages/he/config/internal/regularRootsNifal.js +0 -195
- package/src/languageProcessing/languages/he/config/internal/regularRootsPual.js +0 -168
- package/src/languageProcessing/languages/he/config/passiveVoice/regularRootsHufal.js +0 -188
- package/src/languageProcessing/languages/he/config/passiveVoice/regularRootsNifal.js +0 -197
- package/src/languageProcessing/languages/he/config/passiveVoice/regularRootsPual.js +0 -170
- package/src/languageProcessing/languages/he/config/prefixedFunctionWords.js +0 -2
- package/src/languageProcessing/languages/he/config/sentenceLength.js +0 -3
- package/src/languageProcessing/languages/he/config/transitionWords.js +0 -28
- package/src/languageProcessing/languages/he/config/twoPartTransitionWords.js +0 -8
- package/src/languageProcessing/languages/he/helpers/createBasicWordForms.js +0 -33
- package/src/languageProcessing/languages/he/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/he/helpers/internal/stem.js +0 -52
- package/src/languageProcessing/languages/he/helpers/isPassiveSentence.js +0 -96
- package/src/languageProcessing/languages/he/helpers/stem.js +0 -52
- package/src/languageProcessing/languages/hu/Researcher.js +0 -48
- package/src/languageProcessing/languages/hu/config/firstWordExceptions.js +0 -31
- package/src/languageProcessing/languages/hu/config/functionWords.js +0 -284
- package/src/languageProcessing/languages/hu/config/internal/auxiliaries.js +0 -97
- package/src/languageProcessing/languages/hu/config/internal/morphologicalPassiveAffixes.js +0 -125
- package/src/languageProcessing/languages/hu/config/internal/nonPassivesInVaAndVe.js +0 -265
- package/src/languageProcessing/languages/hu/config/internal/odikVerbs.js +0 -273
- package/src/languageProcessing/languages/hu/config/internal/participles.js +0 -412
- package/src/languageProcessing/languages/hu/config/stopWords.js +0 -213
- package/src/languageProcessing/languages/hu/config/transitionWords.js +0 -42
- package/src/languageProcessing/languages/hu/config/twoPartTransitionWords.js +0 -34
- package/src/languageProcessing/languages/hu/helpers/getClauses.js +0 -25
- package/src/languageProcessing/languages/hu/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/hu/helpers/internal/getParticiples.js +0 -21
- package/src/languageProcessing/languages/hu/helpers/internal/stem.js +0 -389
- package/src/languageProcessing/languages/hu/helpers/isPassiveSentence.js +0 -54
- package/src/languageProcessing/languages/hu/values/Clause.js +0 -41
- package/src/languageProcessing/languages/id/Researcher.js +0 -46
- package/src/languageProcessing/languages/id/config/firstWordExceptions.js +0 -13
- package/src/languageProcessing/languages/id/config/functionWords.js +0 -202
- package/src/languageProcessing/languages/id/config/internal/nonPassiveVerbsStartingDi.js +0 -215
- package/src/languageProcessing/languages/id/config/transitionWords.js +0 -62
- package/src/languageProcessing/languages/id/config/twoPartTransitionWords.js +0 -13
- package/src/languageProcessing/languages/id/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/id/helpers/internal/stem.js +0 -462
- package/src/languageProcessing/languages/id/helpers/internal/stemHelpers.js +0 -78
- package/src/languageProcessing/languages/id/helpers/isPassiveSentence.js +0 -39
- package/src/languageProcessing/languages/id/helpers/splitIntoTokensCustom.js +0 -47
- package/src/languageProcessing/languages/it/Researcher.js +0 -48
- package/src/languageProcessing/languages/it/config/firstWordExceptions.js +0 -17
- package/src/languageProcessing/languages/it/config/functionWords.js +0 -277
- package/src/languageProcessing/languages/it/config/internal/passiveVoiceAuxiliaries.js +0 -98
- package/src/languageProcessing/languages/it/config/internal/passiveVoiceParticiples.js +0 -7197
- package/src/languageProcessing/languages/it/config/sentenceLength.js +0 -3
- package/src/languageProcessing/languages/it/config/stopWords.js +0 -57
- package/src/languageProcessing/languages/it/config/syllables.json +0 -573
- package/src/languageProcessing/languages/it/config/transitionWords.js +0 -104
- package/src/languageProcessing/languages/it/config/twoPartTransitionWords.js +0 -9
- package/src/languageProcessing/languages/it/helpers/calculateFleschReadingScore.js +0 -15
- package/src/languageProcessing/languages/it/helpers/getClauses.js +0 -32
- package/src/languageProcessing/languages/it/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/it/helpers/internal/getParticiples.js +0 -34
- package/src/languageProcessing/languages/it/helpers/internal/stem.js +0 -436
- package/src/languageProcessing/languages/it/values/Clause.js +0 -47
- package/src/languageProcessing/languages/ja/Researcher.js +0 -86
- package/src/languageProcessing/languages/ja/config/assessmentApplicabilityCharacterCount.js +0 -4
- package/src/languageProcessing/languages/ja/config/firstWordExceptions.js +0 -8
- package/src/languageProcessing/languages/ja/config/functionWords.js +0 -563
- package/src/languageProcessing/languages/ja/config/keyphraseLength.js +0 -16
- package/src/languageProcessing/languages/ja/config/metaDescriptionLength.js +0 -4
- package/src/languageProcessing/languages/ja/config/paragraphLength.js +0 -10
- package/src/languageProcessing/languages/ja/config/sentenceLength.js +0 -4
- package/src/languageProcessing/languages/ja/config/subheadingsTooLong.js +0 -18
- package/src/languageProcessing/languages/ja/config/textLength.js +0 -47
- package/src/languageProcessing/languages/ja/config/topicLength.js +0 -5
- package/src/languageProcessing/languages/ja/config/transitionWords.js +0 -354
- package/src/languageProcessing/languages/ja/customResearches/findKeyphraseInSEOTitle.js +0 -98
- package/src/languageProcessing/languages/ja/customResearches/getKeyphraseLength.js +0 -19
- package/src/languageProcessing/languages/ja/customResearches/getWordForms.js +0 -50
- package/src/languageProcessing/languages/ja/customResearches/textLength.js +0 -24
- package/src/languageProcessing/languages/ja/helpers/countCharacters.js +0 -19
- package/src/languageProcessing/languages/ja/helpers/customGetStemmer.js +0 -21
- package/src/languageProcessing/languages/ja/helpers/getContentWords.js +0 -21
- package/src/languageProcessing/languages/ja/helpers/getWords.js +0 -31
- package/src/languageProcessing/languages/ja/helpers/internal/SentenceTokenizer.js +0 -102
- package/src/languageProcessing/languages/ja/helpers/internal/createWordForms.js +0 -68
- package/src/languageProcessing/languages/ja/helpers/internal/determineStem.js +0 -17
- package/src/languageProcessing/languages/ja/helpers/matchTextWithWord.js +0 -53
- package/src/languageProcessing/languages/ja/helpers/matchTransitionWords.js +0 -25
- package/src/languageProcessing/languages/ja/helpers/memoizedSentenceTokenizer.js +0 -28
- package/src/languageProcessing/languages/ja/helpers/splitIntoTokensCustom.js +0 -20
- package/src/languageProcessing/languages/ja/helpers/wordsCharacterCount.js +0 -13
- package/src/languageProcessing/languages/nb/Researcher.js +0 -45
- package/src/languageProcessing/languages/nb/config/firstWordExceptions.js +0 -12
- package/src/languageProcessing/languages/nb/config/functionWords.js +0 -106
- package/src/languageProcessing/languages/nb/config/internal/participles.js +0 -3127
- package/src/languageProcessing/languages/nb/config/internal/passiveVoiceAuxiliaries.js +0 -15
- package/src/languageProcessing/languages/nb/config/stopWords.js +0 -39
- package/src/languageProcessing/languages/nb/config/transitionWords.js +0 -21
- package/src/languageProcessing/languages/nb/config/twoPartTransitionWords.js +0 -10
- package/src/languageProcessing/languages/nb/helpers/getClauses.js +0 -28
- package/src/languageProcessing/languages/nb/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/nb/helpers/internal/getParticiples.js +0 -24
- package/src/languageProcessing/languages/nb/helpers/internal/stem.js +0 -133
- package/src/languageProcessing/languages/nb/values/Clause.js +0 -43
- package/src/languageProcessing/languages/nl/Researcher.js +0 -48
- package/src/languageProcessing/languages/nl/config/firstWordExceptions.js +0 -15
- package/src/languageProcessing/languages/nl/config/functionWords.js +0 -233
- package/src/languageProcessing/languages/nl/config/internal/nonParticiples.js +0 -2515
- package/src/languageProcessing/languages/nl/config/internal/passiveVoiceAuxiliaries.js +0 -13
- package/src/languageProcessing/languages/nl/config/internal/passiveVoiceIrregulars.js +0 -474
- package/src/languageProcessing/languages/nl/config/keyphraseLength.js +0 -10
- package/src/languageProcessing/languages/nl/config/stopWords.js +0 -35
- package/src/languageProcessing/languages/nl/config/syllables.json +0 -343
- package/src/languageProcessing/languages/nl/config/transitionWords.js +0 -22
- package/src/languageProcessing/languages/nl/config/twoPartTransitionWords.js +0 -8
- package/src/languageProcessing/languages/nl/helpers/calculateFleschReadingScore.js +0 -15
- package/src/languageProcessing/languages/nl/helpers/getClauses.js +0 -25
- package/src/languageProcessing/languages/nl/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/nl/helpers/internal/checkExceptionsWithFullForms.js +0 -128
- package/src/languageProcessing/languages/nl/helpers/internal/detectAndStemRegularParticiple.js +0 -324
- package/src/languageProcessing/languages/nl/helpers/internal/detectAndStemSuffixes.js +0 -164
- package/src/languageProcessing/languages/nl/helpers/internal/determineStem.js +0 -133
- package/src/languageProcessing/languages/nl/helpers/internal/getParticiples.js +0 -25
- package/src/languageProcessing/languages/nl/helpers/internal/getStemWordsWithTAndDEnding.js +0 -183
- package/src/languageProcessing/languages/nl/helpers/internal/stem.js +0 -146
- package/src/languageProcessing/languages/nl/helpers/internal/stemModificationHelpers.js +0 -109
- package/src/languageProcessing/languages/nl/helpers/internal/stemTOrDFromEndOfWord.js +0 -65
- package/src/languageProcessing/languages/nl/values/Clause.js +0 -62
- package/src/languageProcessing/languages/pl/Researcher.js +0 -47
- package/src/languageProcessing/languages/pl/config/firstWordExceptions.js +0 -12
- package/src/languageProcessing/languages/pl/config/functionWords.js +0 -421
- package/src/languageProcessing/languages/pl/config/internal/auxiliaries.js +0 -85
- package/src/languageProcessing/languages/pl/config/internal/participles.js +0 -26433
- package/src/languageProcessing/languages/pl/config/sentenceLength.js +0 -10
- package/src/languageProcessing/languages/pl/config/stopWords.js +0 -36
- package/src/languageProcessing/languages/pl/config/transitionWords.js +0 -42
- package/src/languageProcessing/languages/pl/config/twoPartTransitionWords.js +0 -8
- package/src/languageProcessing/languages/pl/helpers/getClauses.js +0 -25
- package/src/languageProcessing/languages/pl/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/pl/helpers/internal/getParticiples.js +0 -18
- package/src/languageProcessing/languages/pl/helpers/internal/stem.js +0 -161
- package/src/languageProcessing/languages/pl/values/Clause.js +0 -53
- package/src/languageProcessing/languages/pt/Researcher.js +0 -48
- package/src/languageProcessing/languages/pt/config/firstWordExceptions.js +0 -15
- package/src/languageProcessing/languages/pt/config/functionWords.js +0 -226
- package/src/languageProcessing/languages/pt/config/internal/passiveVoiceAuxiliaries.js +0 -66
- package/src/languageProcessing/languages/pt/config/internal/passiveVoiceParticiples.js +0 -4088
- package/src/languageProcessing/languages/pt/config/sentenceLength.js +0 -3
- package/src/languageProcessing/languages/pt/config/stopWords.js +0 -50
- package/src/languageProcessing/languages/pt/config/syllables.json +0 -38
- package/src/languageProcessing/languages/pt/config/transitionWords.js +0 -34
- package/src/languageProcessing/languages/pt/config/twoPartTransitionWords.js +0 -9
- package/src/languageProcessing/languages/pt/helpers/calculateFleschReadingScore.js +0 -15
- package/src/languageProcessing/languages/pt/helpers/getClauses.js +0 -29
- package/src/languageProcessing/languages/pt/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/pt/helpers/internal/getParticiples.js +0 -35
- package/src/languageProcessing/languages/pt/helpers/internal/stem.js +0 -319
- package/src/languageProcessing/languages/pt/values/Clause.js +0 -43
- package/src/languageProcessing/languages/ru/Researcher.js +0 -48
- package/src/languageProcessing/languages/ru/config/firstWordExceptions.js +0 -14
- package/src/languageProcessing/languages/ru/config/fleschReadingEaseScores.js +0 -20
- package/src/languageProcessing/languages/ru/config/functionWords.js +0 -519
- package/src/languageProcessing/languages/ru/config/internal/participlesShortenedList.js +0 -2914
- package/src/languageProcessing/languages/ru/config/internal/passiveVoiceParticiples.js +0 -6295
- package/src/languageProcessing/languages/ru/config/sentenceLength.js +0 -3
- package/src/languageProcessing/languages/ru/config/syllables.json +0 -19
- package/src/languageProcessing/languages/ru/config/transitionWords.js +0 -62
- package/src/languageProcessing/languages/ru/config/twoPartTransitionWords.js +0 -14
- package/src/languageProcessing/languages/ru/helpers/calculateFleschReadingScore.js +0 -16
- package/src/languageProcessing/languages/ru/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/ru/helpers/internal/stem.js +0 -288
- package/src/languageProcessing/languages/ru/helpers/isPassiveSentence.js +0 -14
- package/src/languageProcessing/languages/sk/Researcher.js +0 -46
- package/src/languageProcessing/languages/sk/config/firstWordExceptions.js +0 -14
- package/src/languageProcessing/languages/sk/config/functionWords.js +0 -855
- package/src/languageProcessing/languages/sk/config/internal/nonPassives.js +0 -1074
- package/src/languageProcessing/languages/sk/config/internal/passiveVoiceAuxiliaries.js +0 -22
- package/src/languageProcessing/languages/sk/config/stopWords.js +0 -34
- package/src/languageProcessing/languages/sk/config/transitionWords.js +0 -23
- package/src/languageProcessing/languages/sk/config/twoPartTransitionWords.js +0 -10
- package/src/languageProcessing/languages/sk/helpers/getClauses.js +0 -26
- package/src/languageProcessing/languages/sk/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/sk/helpers/internal/getParticiples.js +0 -16
- package/src/languageProcessing/languages/sk/helpers/internal/stem.js +0 -319
- package/src/languageProcessing/languages/sk/values/Clause.js +0 -39
- package/src/languageProcessing/languages/sv/Researcher.js +0 -45
- package/src/languageProcessing/languages/sv/config/firstWordExceptions.js +0 -15
- package/src/languageProcessing/languages/sv/config/functionWords.js +0 -176
- package/src/languageProcessing/languages/sv/config/internal/passiveVerbs.js +0 -10400
- package/src/languageProcessing/languages/sv/config/keyphraseLength.js +0 -11
- package/src/languageProcessing/languages/sv/config/transitionWords.js +0 -35
- package/src/languageProcessing/languages/sv/config/twoPartTransitionWords.js +0 -8
- package/src/languageProcessing/languages/sv/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/sv/helpers/internal/stem.js +0 -152
- package/src/languageProcessing/languages/sv/helpers/isPassiveSentence.js +0 -14
- package/src/languageProcessing/languages/tr/Researcher.js +0 -44
- package/src/languageProcessing/languages/tr/config/firstWordExceptions.js +0 -13
- package/src/languageProcessing/languages/tr/config/functionWords.js +0 -116
- package/src/languageProcessing/languages/tr/config/internal/nonPassiveExceptions.js +0 -574
- package/src/languageProcessing/languages/tr/config/internal/passiveEndings.js +0 -151
- package/src/languageProcessing/languages/tr/config/sentenceLength.js +0 -7
- package/src/languageProcessing/languages/tr/config/transitionWords.js +0 -42
- package/src/languageProcessing/languages/tr/config/twoPartTransitionWords.js +0 -7
- package/src/languageProcessing/languages/tr/helpers/getStemmer.js +0 -22
- package/src/languageProcessing/languages/tr/helpers/internal/stem.js +0 -20
- package/src/languageProcessing/languages/tr/helpers/isPassiveSentence.js +0 -43
- package/src/languageProcessing/researches/altTagCount.js +0 -70
- package/src/languageProcessing/researches/countSentencesFromText.js +0 -19
- package/src/languageProcessing/researches/findKeyphraseInSEOTitle.js +0 -257
- package/src/languageProcessing/researches/findKeywordInFirstParagraph.js +0 -86
- package/src/languageProcessing/researches/findTransitionWords.js +0 -123
- package/src/languageProcessing/researches/functionWordsInKeyphrase.js +0 -44
- package/src/languageProcessing/researches/getAnchorsWithKeyphrase.js +0 -227
- package/src/languageProcessing/researches/getFleschReadingScore.js +0 -150
- package/src/languageProcessing/researches/getKeywordDensity.js +0 -44
- package/src/languageProcessing/researches/getLinkStatistics.js +0 -54
- package/src/languageProcessing/researches/getLinks.js +0 -18
- package/src/languageProcessing/researches/getLongCenterAlignedTexts.js +0 -37
- package/src/languageProcessing/researches/getParagraphLength.js +0 -44
- package/src/languageProcessing/researches/getParagraphs.js +0 -18
- package/src/languageProcessing/researches/getPassiveVoiceResult.js +0 -129
- package/src/languageProcessing/researches/getProminentWordsForInsights.js +0 -48
- package/src/languageProcessing/researches/getProminentWordsForInternalLinking.js +0 -119
- package/src/languageProcessing/researches/getSentenceBeginnings.js +0 -124
- package/src/languageProcessing/researches/getSubheadingTextLengths.js +0 -59
- package/src/languageProcessing/researches/getWordForms.js +0 -204
- package/src/languageProcessing/researches/h1s.js +0 -10
- package/src/languageProcessing/researches/imageCount.js +0 -16
- package/src/languageProcessing/researches/index.js +0 -5
- package/src/languageProcessing/researches/keyphraseDistribution.js +0 -249
- package/src/languageProcessing/researches/keyphraseLength.js +0 -17
- package/src/languageProcessing/researches/keywordCount.js +0 -134
- package/src/languageProcessing/researches/keywordCountInUrl.js +0 -57
- package/src/languageProcessing/researches/matchKeywordInSubheadings.js +0 -62
- package/src/languageProcessing/researches/metaDescriptionKeyword.js +0 -85
- package/src/languageProcessing/researches/metaDescriptionLength.js +0 -12
- package/src/languageProcessing/researches/pageTitleWidth.js +0 -11
- package/src/languageProcessing/researches/readingTime.js +0 -82
- package/src/languageProcessing/researches/sentences.js +0 -20
- package/src/languageProcessing/researches/videoCount.js +0 -32
- package/src/languageProcessing/researches/wordComplexity.js +0 -129
- package/src/languageProcessing/researches/wordCountInText.js +0 -29
- package/src/languageProcessing/values/Clause.js +0 -108
- package/src/languageProcessing/values/ProminentWord.js +0 -95
- package/src/languageProcessing/values/Sentence.js +0 -111
- package/src/languageProcessing/values/index.js +0 -9
- package/src/markers/addMark.js +0 -9
- package/src/markers/addMarkSingleWord.js +0 -32
- package/src/markers/index.js +0 -7
- package/src/markers/removeDuplicateMarks.js +0 -27
- package/src/markers/removeMarks.js +0 -11
- package/src/parse/build/build.js +0 -52
- package/src/parse/build/index.js +0 -10
- package/src/parse/build/private/adapt.js +0 -113
- package/src/parse/build/private/adaptAttributes.js +0 -36
- package/src/parse/build/private/alwaysFilterElements.js +0 -75
- package/src/parse/build/private/combineIntoImplicitParagraphs.js +0 -130
- package/src/parse/build/private/filterBeforeTokenizing.js +0 -32
- package/src/parse/build/private/filterHelpers.js +0 -44
- package/src/parse/build/private/filterTree.js +0 -42
- package/src/parse/build/private/getTextElementPositions.js +0 -184
- package/src/parse/build/private/helpers/parseClassAttribute.js +0 -9
- package/src/parse/build/private/isPhrasingContent.js +0 -28
- package/src/parse/build/private/parseBlocks.js +0 -151
- package/src/parse/build/private/tokenize.js +0 -74
- package/src/parse/language/LanguageProcessor.js +0 -74
- package/src/parse/structure/Heading.js +0 -26
- package/src/parse/structure/Node.js +0 -69
- package/src/parse/structure/Paragraph.js +0 -48
- package/src/parse/structure/Sentence.js +0 -30
- package/src/parse/structure/SourceCodeLocation.js +0 -41
- package/src/parse/structure/Text.js +0 -27
- package/src/parse/structure/Token.js +0 -24
- package/src/parse/structure/index.js +0 -16
- package/src/parse/traverse/findAllInTree.js +0 -58
- package/src/parse/traverse/index.js +0 -12
- package/src/parse/traverse/innerText.js +0 -26
- package/src/parsedPaper/ParsedPaper.js +0 -92
- package/src/parsedPaper/assess/TreeAssessor.js +0 -184
- package/src/parsedPaper/assess/assessmentListFactories.js +0 -73
- package/src/parsedPaper/assess/assessments/Assessment.js +0 -79
- package/src/parsedPaper/assess/assessments/index.js +0 -6
- package/src/parsedPaper/assess/assessorFactories.js +0 -104
- package/src/parsedPaper/assess/cornerstone/assessmentListFactories.js +0 -47
- package/src/parsedPaper/assess/cornerstone/index.js +0 -5
- package/src/parsedPaper/assess/index.js +0 -20
- package/src/parsedPaper/build/PaperParser.js +0 -105
- package/src/parsedPaper/build/linguisticParsing/Sentence.js +0 -89
- package/src/parsedPaper/build/linguisticParsing/SentenceTokenizer.js +0 -323
- package/src/parsedPaper/build/linguisticParsing/parseText.js +0 -20
- package/src/parsedPaper/build/tree/TreeBuilder.js +0 -75
- package/src/parsedPaper/build/tree/cleanup/calculateTextIndices.js +0 -190
- package/src/parsedPaper/build/tree/cleanup/getElementContent.js +0 -21
- package/src/parsedPaper/build/tree/cleanup/postParsing.js +0 -37
- package/src/parsedPaper/build/tree/html/HTMLTreeConverter.js +0 -230
- package/src/parsedPaper/build/tree/html/buildTree.js +0 -31
- package/src/parsedPaper/build/tree/html/htmlConstants.js +0 -37
- package/src/parsedPaper/build/tree/index.js +0 -14
- package/src/parsedPaper/build/tree/metadata/buildTree.js +0 -32
- package/src/parsedPaper/research/TreeResearcher.js +0 -134
- package/src/parsedPaper/research/index.js +0 -13
- package/src/parsedPaper/research/researches/Headings.js +0 -20
- package/src/parsedPaper/research/researches/LinkStatistics.js +0 -128
- package/src/parsedPaper/research/researches/Research.js +0 -50
- package/src/parsedPaper/research/researches/index.js +0 -1
- package/src/parsedPaper/structure/tree/FormattingElement.js +0 -67
- package/src/parsedPaper/structure/tree/SourceCodeLocation.js +0 -31
- package/src/parsedPaper/structure/tree/TextContainer.js +0 -85
- package/src/parsedPaper/structure/tree/index.js +0 -22
- package/src/parsedPaper/structure/tree/nodes/Heading.js +0 -26
- package/src/parsedPaper/structure/tree/nodes/LeafNode.js +0 -75
- package/src/parsedPaper/structure/tree/nodes/List.js +0 -47
- package/src/parsedPaper/structure/tree/nodes/ListItem.js +0 -26
- package/src/parsedPaper/structure/tree/nodes/MetadataMiscellaneous.js +0 -46
- package/src/parsedPaper/structure/tree/nodes/MetadataText.js +0 -26
- package/src/parsedPaper/structure/tree/nodes/Node.js +0 -154
- package/src/parsedPaper/structure/tree/nodes/Paragraph.js +0 -24
- package/src/parsedPaper/structure/tree/nodes/StructuredNode.js +0 -52
- package/src/parsedPaper/structure/tree/nodes/index.js +0 -21
- package/src/scoring/assessments/assessment.js +0 -63
- package/src/scoring/assessments/index.js +0 -58
- package/src/scoring/assessments/readability/ParagraphTooLongAssessment.js +0 -173
- package/src/scoring/assessments/readability/SentenceBeginningsAssessment.js +0 -132
- package/src/scoring/assessments/readability/SentenceLengthInTextAssessment.js +0 -186
- package/src/scoring/assessments/readability/TransitionWordsAssessment.js +0 -168
- package/src/scoring/assessments/seo/ImageCountAssessment.js +0 -112
- package/src/scoring/assessments/seo/InternalLinksAssessment.js +0 -114
- package/src/scoring/assessments/seo/IntroductionKeywordAssessment.js +0 -110
- package/src/scoring/assessments/seo/KeyphraseAssessment.js +0 -104
- package/src/scoring/assessments/seo/KeyphraseLengthAssessment.js +0 -110
- package/src/scoring/assessments/seo/KeywordDensityAssessment.js +0 -116
- package/src/scoring/assessments/seo/MetaDescriptionKeywordAssessment.js +0 -114
- package/src/scoring/assessments/seo/MetaDescriptionLengthAssessment.js +0 -112
- package/src/scoring/assessments/seo/MetaTitleKeywordAssessment.js +0 -111
- package/src/scoring/assessments/seo/NumberInMetaTitleAssessment.js +0 -107
- package/src/scoring/assessments/seo/OutboundLinksAssessment.js +0 -111
- package/src/scoring/assessments/seo/PageTitleWidthAssessment.js +0 -104
- package/src/scoring/assessments/seo/SingleH1Assessment.js +0 -118
- package/src/scoring/assessments/seo/SingleTitleAssessment.js +0 -108
- package/src/scoring/assessments/seo/SubHeadingsKeywordAssessment.js +0 -107
- package/src/scoring/assessments/seo/TextImagesAssessment.js +0 -144
- package/src/scoring/assessments/seo/TextLengthAssessment.js +0 -100
- package/src/scoring/assessments/seo/UrlKeywordAssessment.js +0 -111
- package/src/scoring/assessments/seo/UrlLengthAssessment.js +0 -103
- package/src/scoring/assessors/assessor.js +0 -269
- package/src/scoring/assessors/avadaAssessor.js +0 -67
- package/src/scoring/assessors/contentAssessor.js +0 -159
- package/src/scoring/assessors/index.js +0 -4
- package/src/scoring/assessors/seoAssessor.js +0 -57
- package/src/scoring/helpers/assessments/checkForTooLongSentences.js +0 -13
- package/src/scoring/helpers/assessments/inRange.js +0 -49
- package/src/scoring/helpers/assessments/keyphraseLengthFactor.js +0 -10
- package/src/scoring/helpers/assessments/recommendedKeywordCount.js +0 -43
- package/src/scoring/helpers/index.js +0 -74
- package/src/scoring/interpreters/index.js +0 -5
- package/src/scoring/interpreters/scoreToRating.js +0 -31
- package/src/scoring/renderers/AssessorPresenter.js +0 -360
- package/src/scoring/scoreAggregators/ReadabilityScoreAggregator.js +0 -203
- package/src/scoring/scoreAggregators/SEOScoreAggregator.js +0 -54
- package/src/scoring/scoreAggregators/ScoreAggregator.js +0 -23
- package/src/scoring/scoreAggregators/index.js +0 -3
- package/src/values/AssessmentResult.js +0 -496
- package/src/values/Mark.js +0 -271
- package/src/values/Paper.js +0 -425
- package/src/values/index.js +0 -9
- package/src/vendor/turkishStemmer.js +0 -3435
- package/tsconfig.json +0 -15
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Returns a list with stopwords for the Portuguese passive voice assessment.
|
|
3
|
-
* @returns {Array} The list with stopwords.
|
|
4
|
-
*/
|
|
5
|
-
export default [
|
|
6
|
-
"que ",
|
|
7
|
-
"como",
|
|
8
|
-
"e",
|
|
9
|
-
"nem",
|
|
10
|
-
"se",
|
|
11
|
-
"caso",
|
|
12
|
-
"conforme",
|
|
13
|
-
"consoante",
|
|
14
|
-
"porque",
|
|
15
|
-
"pois",
|
|
16
|
-
"segundo ",
|
|
17
|
-
"enquanto",
|
|
18
|
-
"embora",
|
|
19
|
-
"conquanto",
|
|
20
|
-
"quanto menos",
|
|
21
|
-
"quanto mais",
|
|
22
|
-
"quando",
|
|
23
|
-
"mal ",
|
|
24
|
-
"apenas",
|
|
25
|
-
"ora",
|
|
26
|
-
"seja",
|
|
27
|
-
"quer",
|
|
28
|
-
"já",
|
|
29
|
-
"logo",
|
|
30
|
-
"portanto",
|
|
31
|
-
"por isso",
|
|
32
|
-
"pois",
|
|
33
|
-
"рог conseguinte",
|
|
34
|
-
"ou seja ",
|
|
35
|
-
"isto é",
|
|
36
|
-
"quer dizer",
|
|
37
|
-
"a saber",
|
|
38
|
-
"ou melhor",
|
|
39
|
-
"mas",
|
|
40
|
-
"também",
|
|
41
|
-
"sim",
|
|
42
|
-
"porém",
|
|
43
|
-
"contudo",
|
|
44
|
-
"senão",
|
|
45
|
-
"todavia",
|
|
46
|
-
"mas ainda",
|
|
47
|
-
"no entanto",
|
|
48
|
-
"entretanto",
|
|
49
|
-
];
|
|
50
|
-
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"vowels": "aeiouáéíóúàâêôãõü",
|
|
3
|
-
"deviations": {
|
|
4
|
-
"vowels": [
|
|
5
|
-
{
|
|
6
|
-
"fragments": [ "(gu|qu)[aeoáéíóúêã]" ],
|
|
7
|
-
"countModifier": -1
|
|
8
|
-
},
|
|
9
|
-
{
|
|
10
|
-
"fragments": [ "[^(g|q|a)][aeiou][aeo]$" ],
|
|
11
|
-
"countModifier": -1
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
"fragments": [ "[aeiouáéíóúàâêôü][aeo]", "[aeiou][íúáéóãê]" ],
|
|
15
|
-
"countModifier": 1
|
|
16
|
-
},
|
|
17
|
-
{
|
|
18
|
-
"fragments": [ "aí[ae]" ],
|
|
19
|
-
"countModifier": 1
|
|
20
|
-
}
|
|
21
|
-
],
|
|
22
|
-
"words": {
|
|
23
|
-
"full": [
|
|
24
|
-
{ "word": "delegacia", "syllables": 5 },
|
|
25
|
-
{ "word": "democracia", "syllables": 5 },
|
|
26
|
-
{ "word": "parceria", "syllables": 4 },
|
|
27
|
-
{ "word": "secretaria", "syllables": 5 }
|
|
28
|
-
],
|
|
29
|
-
"fragments": []
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
export const singleWords = [
|
|
2
|
-
"ademais", "afinal", "aliás", "analogamente", "anteriormente", "assim", "atualmente", "certamente", "conforme",
|
|
3
|
-
"conquanto", "contudo", "decerto", "embora", "enfim", "enquanto", "então", "entretanto", "eventualmente",
|
|
4
|
-
"igualmente", "inegavelmente", "inesperadamente", "mas", "ocasionalmente", "outrossim", "pois", "porquanto",
|
|
5
|
-
"porque", "portanto", "posteriormente", "precipuamente", "primeiramente", "primordialmente", "principalmente",
|
|
6
|
-
"salvo", "semelhantemente", "similarmente", "sobretudo", "surpreendentemente", "todavia", "logo", "inclusive",
|
|
7
|
-
];
|
|
8
|
-
|
|
9
|
-
export const multipleWords = [
|
|
10
|
-
"a fim de", "a fim de que", "a menos que", "a princípio", "a saber", "acima de tudo", "ainda assim", "ainda mais",
|
|
11
|
-
"ainda que", "além disso", "antes de mais nada", "antes de tudo", "antes que", "ao mesmo tempo", "ao passo que",
|
|
12
|
-
"ao propósito", "apesar de", "apesar disso", "às vezes", "assim como", "assim que", "assim sendo", "assim também",
|
|
13
|
-
"bem como", "com a finalidade de", "com efeito", "com o fim de", "com o intuito de", "com o propósito de",
|
|
14
|
-
"com toda a certeza", "como resultado", "como se", "da mesma forma", "de acordo com", "de conformidade com",
|
|
15
|
-
"de fato", "de maneira idêntica", "de tal forma que", "de tal sorte que", "depois que", "desde que", "dessa forma",
|
|
16
|
-
"dessa maneira", "desse modo", "do mesmo modo", "é provável", "em conclusão", "em contrapartida", "em contraste com",
|
|
17
|
-
"em outras palavras", "em primeiro lugar", "em princípio", "em resumo", "em seguida", "em segundo lugar", "em síntese",
|
|
18
|
-
"em suma", "em terceiro lugar", "em virtude de", "finalmente", "isto é", "já que", "juntamente com", "logo após",
|
|
19
|
-
"logo depois", "logo que", "mesmo que", "não apenas", "nesse hiato", "nesse ínterim", "nesse meio tempo", "nesse sentido",
|
|
20
|
-
"no entanto", "no momento em que", "ou por outra", "ou seja", "para que", "pelo contrário", "por analogia", "por causa de",
|
|
21
|
-
"por certo", "por conseguinte", "por consequência", "por conseqüência", "porém", "por exemplo", "por fim", "por isso", "por mais que",
|
|
22
|
-
"por menos que", "por outro lado", "por vezes", "posto que", "se acaso", "se bem que", "seja como for", "sem dúvida",
|
|
23
|
-
"sempre que", "só para exemplificar", "só para ilustrar", "só que", "sob o mesmo ponto de vista", "talvez provavelmente",
|
|
24
|
-
"tanto quanto", "todas as vezes que", "todas as vezes em que", "uma vez que", "visto que", "de repente",
|
|
25
|
-
"nada obstante", "não obstante", "de qualquer forma", "diga-se de passagem", "de qualquer jeito",
|
|
26
|
-
"de vez em quando", "aos poucos", "claro que", "no geral", "em geral", "geralmente", "subitamente", "a despeito de",
|
|
27
|
-
"em razão de", "em razão disso", "razão pela qual", "por essa razão", "por motivo de", "devido a", "em todo o caso", "de qualquer maneira",
|
|
28
|
-
"de todo modo", "de todo a modo", "de qualquer modo", "de forma que", "de modo que", "de tempos em tempos", "daí em diante", " daí por diante",
|
|
29
|
-
"de hoje em diante", "a partir de agora", "de agora em diante",
|
|
30
|
-
];
|
|
31
|
-
|
|
32
|
-
export const allWords = singleWords.concat( multipleWords );
|
|
33
|
-
|
|
34
|
-
export default allWords;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Returns an array with two-part transition words to be used by the assessments.
|
|
3
|
-
* @returns {Array} The array filled with two-part transition words.
|
|
4
|
-
*/
|
|
5
|
-
export default [
|
|
6
|
-
[ "não apenas", "como também" ], [ "não só", "bem como" ], [ "não só", "como também" ],
|
|
7
|
-
[ "não só", "mas também" ], [ "ora", "ora" ], [ "ou", "ou" ], [ "quer", "quer" ],
|
|
8
|
-
];
|
|
9
|
-
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { helpers } from "avadaseo";
|
|
2
|
-
const { formatNumber } = helpers;
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Returns the Flesch reading score for Portuguese.
|
|
6
|
-
*
|
|
7
|
-
* @param {Object} statistics The Flesch reading statistics.
|
|
8
|
-
*
|
|
9
|
-
* @returns {number} The Flesch reading score for Portuguese.
|
|
10
|
-
*/
|
|
11
|
-
export default function calculateScore( statistics ) {
|
|
12
|
-
const score = 248.835 - ( 1.015 * statistics.averageWordsPerSentence ) - ( 84.6 * statistics.numberOfSyllables / statistics.numberOfWords );
|
|
13
|
-
|
|
14
|
-
return formatNumber( score );
|
|
15
|
-
}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import {languageProcessing} from '../../../index';
|
|
2
|
-
const {createRegexFromArray, getClauses} = languageProcessing;
|
|
3
|
-
|
|
4
|
-
import PortugueseClause from '../values/Clause';
|
|
5
|
-
import auxiliaries from '../config/internal/passiveVoiceAuxiliaries.js';
|
|
6
|
-
import stopwords from '../config/stopWords.js';
|
|
7
|
-
const followingAuxiliaryExceptionWords = ['o', 'a', 'os', 'as', 'um', 'ums', 'uma', 'umas'];
|
|
8
|
-
|
|
9
|
-
const options = {
|
|
10
|
-
Clause: PortugueseClause,
|
|
11
|
-
stopwords: stopwords,
|
|
12
|
-
auxiliaries: auxiliaries,
|
|
13
|
-
regexes: {
|
|
14
|
-
auxiliaryRegex: createRegexFromArray(auxiliaries),
|
|
15
|
-
stopCharacterRegex: /([:,])(?=[ \n\r\t'"+\-»«‹›<>])/gi,
|
|
16
|
-
followingAuxiliaryExceptionRegex: createRegexFromArray(followingAuxiliaryExceptionWords)
|
|
17
|
-
}
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
/**
|
|
21
|
-
* Gets the clauses from a sentence by determining sentence breakers.
|
|
22
|
-
*
|
|
23
|
-
* @param {string} sentence The sentence to split up into clauses.
|
|
24
|
-
*
|
|
25
|
-
* @returns {Array} The array with all clauses that have an auxiliary.
|
|
26
|
-
*/
|
|
27
|
-
export default function getPortugueseClauses(sentence) {
|
|
28
|
-
return getClauses(sentence, options);
|
|
29
|
-
}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import {get} from 'lodash';
|
|
2
|
-
import {languageProcessing} from '../../../index';
|
|
3
|
-
const {baseStemmer} = languageProcessing;
|
|
4
|
-
|
|
5
|
-
import stem from './internal/stem';
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Returns the stemmer for a researcher.
|
|
9
|
-
*
|
|
10
|
-
* @param {Researcher} researcher The researcher.
|
|
11
|
-
*
|
|
12
|
-
* @returns {Function} The stemmer.
|
|
13
|
-
*/
|
|
14
|
-
export default function getStemmer(researcher) {
|
|
15
|
-
const morphologyData = get(researcher.getData('morphology'), 'pt', false);
|
|
16
|
-
|
|
17
|
-
if (morphologyData) {
|
|
18
|
-
return word => stem(word, morphologyData);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
return baseStemmer;
|
|
22
|
-
}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import {languageProcessing} from '../../../index';
|
|
2
|
-
const {getWords} = languageProcessing;
|
|
3
|
-
|
|
4
|
-
import participleStems from '../../config/internal/passiveVoiceParticiples';
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* Checks if a Portuguese word is a participle.
|
|
8
|
-
* @param {string} word A Portuguese word.
|
|
9
|
-
* @returns {boolean} Returns true if word is a Portuguese participle, and false otherwise.
|
|
10
|
-
*/
|
|
11
|
-
function isParticiple(word) {
|
|
12
|
-
const participleSuffixes = ['a', 'o', 'as', 'os'];
|
|
13
|
-
// For each participle suffixes, check if the word ends in one of them.
|
|
14
|
-
return participleSuffixes.some(suffix => {
|
|
15
|
-
// Make sure only possible participles are targeted (minimum length being "> 3")
|
|
16
|
-
if (word.length > 3 && word.endsWith(suffix)) {
|
|
17
|
-
// If the word ends with one of the suffixes, retrieve the stem.
|
|
18
|
-
const stem = word.slice(0, -suffix.length);
|
|
19
|
-
// Check if the stem is in the list of participle stems: return true if it is, otherwise return false.
|
|
20
|
-
return participleStems.includes(stem);
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* Creates an array of participles for the participles found in a clause.
|
|
27
|
-
*
|
|
28
|
-
* @param {string} clauseText The clause to find participles in.
|
|
29
|
-
*
|
|
30
|
-
* @returns {Array} The list with participles.
|
|
31
|
-
*/
|
|
32
|
-
export default function getParticiples(clauseText) {
|
|
33
|
-
const words = getWords(clauseText);
|
|
34
|
-
return words.filter(word => isParticiple(word));
|
|
35
|
-
}
|
|
@@ -1,319 +0,0 @@
|
|
|
1
|
-
/* eslint-disable max-statements, complexity */
|
|
2
|
-
|
|
3
|
-
/*
|
|
4
|
-
Copyright (c) 2015, Luís Rodrigues
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in
|
|
13
|
-
all copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
21
|
-
THE SOFTWARE.
|
|
22
|
-
*/
|
|
23
|
-
|
|
24
|
-
import {languageProcessing} from '../../../index';
|
|
25
|
-
const {findMatchingEndingInArray} = languageProcessing;
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* Checks whether the character is a vowel.
|
|
29
|
-
*
|
|
30
|
-
* @param {string} character The character to check.
|
|
31
|
-
* @param {string[]} vowels The Portuguese vowels.
|
|
32
|
-
*
|
|
33
|
-
* @returns {boolean} Whether the character is a vowel.
|
|
34
|
-
*/
|
|
35
|
-
const isVowel = function(character, vowels) {
|
|
36
|
-
return vowels.includes(character);
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
/**
|
|
40
|
-
* Finds the first vowel in a string after the specified index and returns the index of the character following that vowel
|
|
41
|
-
* (if found).
|
|
42
|
-
*
|
|
43
|
-
* @param {string} word The word to check.
|
|
44
|
-
* @param {string[]} vowels The Portuguese vowels.
|
|
45
|
-
* @param {number} start The index at which the search for a vowel should begin.
|
|
46
|
-
*
|
|
47
|
-
* @returns {number} The index of the character following the found vowel. If this is not found, the length of the word.
|
|
48
|
-
*/
|
|
49
|
-
const nextVowelPosition = function(word, vowels, start) {
|
|
50
|
-
const length = word.length;
|
|
51
|
-
|
|
52
|
-
for (let position = start; position < length; position++) {
|
|
53
|
-
if (isVowel(word[position], vowels)) {
|
|
54
|
-
return position;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
return length;
|
|
59
|
-
};
|
|
60
|
-
|
|
61
|
-
/**
|
|
62
|
-
* Finds the first consonant in a string after the specified index and returns the index of the character following that
|
|
63
|
-
* consonant (if found).
|
|
64
|
-
*
|
|
65
|
-
* @param {string} word The word to check.
|
|
66
|
-
* @param {string[]} vowels The Portuguese vowels.
|
|
67
|
-
* @param {number} start The index at which the search for a consonant should begin.
|
|
68
|
-
*
|
|
69
|
-
* @returns {number} The index of the character following the found consonant. If this is not found, the length of the word.
|
|
70
|
-
*/
|
|
71
|
-
const nextConsonantPosition = function(word, vowels, start) {
|
|
72
|
-
const length = word.length;
|
|
73
|
-
|
|
74
|
-
for (let position = start; position < length; position++) {
|
|
75
|
-
if (!isVowel(word[position], vowels)) {
|
|
76
|
-
return position;
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
return length;
|
|
81
|
-
};
|
|
82
|
-
|
|
83
|
-
/**
|
|
84
|
-
* Replaces characters with other characters if found in a word.
|
|
85
|
-
*
|
|
86
|
-
* @param {string} word The word to check.
|
|
87
|
-
* @param {string[]} charactersToReplace The characters to replace.
|
|
88
|
-
* @param {string[]} replacements The replacement characters.
|
|
89
|
-
*
|
|
90
|
-
* @returns {string} The word with the replacement characters, or the original word if no characters to replace were found.
|
|
91
|
-
*/
|
|
92
|
-
const replaceCharacters = function(word, charactersToReplace, replacements) {
|
|
93
|
-
for (let i = 0; i < charactersToReplace.length; i++) {
|
|
94
|
-
word = word.replace(charactersToReplace[i], replacements[i]);
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
return word;
|
|
98
|
-
};
|
|
99
|
-
|
|
100
|
-
/**
|
|
101
|
-
* Looks for the longest suffix in each group and removes it if it is found within the specified region (R1, R2 or RV).
|
|
102
|
-
* Once a suffix is found and removed, stops searching further.
|
|
103
|
-
*
|
|
104
|
-
* For some of the suffix groups, replaces the suffix with another string after removing it (e.g. -logia is replaced with
|
|
105
|
-
* -log).
|
|
106
|
-
*
|
|
107
|
-
* @param {string} word The word to check.
|
|
108
|
-
* @param {Object} standardSuffixData The data for stemming standard suffixes.
|
|
109
|
-
* @param {string} r1Text The text in the R1 region.
|
|
110
|
-
* @param {string} r2Text The text in the R2 region.
|
|
111
|
-
* @param {string} rvText The text in the RV region.
|
|
112
|
-
*
|
|
113
|
-
* @returns {string} The stemmed word or the original word if no suffix was removed.
|
|
114
|
-
*/
|
|
115
|
-
const stemStandardSuffixes = function(word, standardSuffixData, r1Text, r2Text, rvText) {
|
|
116
|
-
const regions = {
|
|
117
|
-
r1: r1Text,
|
|
118
|
-
r2: r2Text,
|
|
119
|
-
rv: rvText
|
|
120
|
-
};
|
|
121
|
-
|
|
122
|
-
for (const suffixGroup of standardSuffixData.standardGroups) {
|
|
123
|
-
const foundSuffix = findMatchingEndingInArray(
|
|
124
|
-
regions[suffixGroup.region],
|
|
125
|
-
suffixGroup.suffixes
|
|
126
|
-
);
|
|
127
|
-
|
|
128
|
-
if (foundSuffix) {
|
|
129
|
-
return word.slice(0, -foundSuffix.length) + suffixGroup.replacement;
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
const specialEnding = findMatchingEndingInArray(
|
|
134
|
-
regions[standardSuffixData.specialClass.region],
|
|
135
|
-
standardSuffixData.specialClass.suffixes
|
|
136
|
-
);
|
|
137
|
-
if (
|
|
138
|
-
findMatchingEndingInArray(word, standardSuffixData.specialClass.wordEndingsToCheck) &&
|
|
139
|
-
specialEnding
|
|
140
|
-
) {
|
|
141
|
-
word = word.slice(0, -specialEnding.length) + standardSuffixData.specialClass.replacement;
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
return word;
|
|
145
|
-
};
|
|
146
|
-
|
|
147
|
-
/**
|
|
148
|
-
* Stems verb suffixes.
|
|
149
|
-
*
|
|
150
|
-
* @param {string} word The original word.
|
|
151
|
-
* @param {string[]} verbSuffixes The verb suffixes to check.
|
|
152
|
-
* @param {string} rvText The text of the RV.
|
|
153
|
-
*
|
|
154
|
-
* @returns {string} The word with the verb suffixes removed (if applicable).
|
|
155
|
-
*/
|
|
156
|
-
const stemVerbSuffixes = function(word, verbSuffixes, rvText) {
|
|
157
|
-
const verbSuffix = findMatchingEndingInArray(rvText, verbSuffixes);
|
|
158
|
-
|
|
159
|
-
if (verbSuffix !== '') {
|
|
160
|
-
word = word.slice(0, -verbSuffix.length);
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
return word;
|
|
164
|
-
};
|
|
165
|
-
|
|
166
|
-
/**
|
|
167
|
-
* Stems residual suffixes.
|
|
168
|
-
*
|
|
169
|
-
* @param {string} word The word to check.
|
|
170
|
-
* @param {Object} residualSuffixData The data used to stem residual suffixes.
|
|
171
|
-
* @param {string} rvText The text in the RV region.
|
|
172
|
-
*
|
|
173
|
-
* @returns {string} The word with a removed suffix, or the original input word if no suffix was removed.
|
|
174
|
-
*/
|
|
175
|
-
const stemResidualSuffixes = function(word, residualSuffixData, rvText) {
|
|
176
|
-
const foundSuffixUe = findMatchingEndingInArray(rvText, residualSuffixData.groupUe.suffixes);
|
|
177
|
-
const foundSuffixIe = findMatchingEndingInArray(rvText, residualSuffixData.groupIe.suffixes);
|
|
178
|
-
const foundSuffixE = findMatchingEndingInArray(rvText, residualSuffixData.groupESuffixes);
|
|
179
|
-
|
|
180
|
-
if (
|
|
181
|
-
foundSuffixUe &&
|
|
182
|
-
findMatchingEndingInArray(word, residualSuffixData.groupUe.wordEndingsToCheck)
|
|
183
|
-
) {
|
|
184
|
-
word = word.slice(0, -foundSuffixUe.length);
|
|
185
|
-
} else if (
|
|
186
|
-
foundSuffixIe &&
|
|
187
|
-
findMatchingEndingInArray(word, residualSuffixData.groupIe.wordEndingsToCheck)
|
|
188
|
-
) {
|
|
189
|
-
word = word.slice(0, -foundSuffixIe.length);
|
|
190
|
-
} else if (foundSuffixE) {
|
|
191
|
-
word = word.slice(0, -foundSuffixE.length);
|
|
192
|
-
} else if (word.endsWith(residualSuffixData.cCedilla[0])) {
|
|
193
|
-
word = word.slice(0, -1) + residualSuffixData.cCedilla[1];
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
return word;
|
|
197
|
-
};
|
|
198
|
-
|
|
199
|
-
/**
|
|
200
|
-
* Stems Portuguese words.
|
|
201
|
-
*
|
|
202
|
-
* @param {string} word The word to stem.
|
|
203
|
-
* @param {Object} morphologyData The Portuguese morphology data.
|
|
204
|
-
*
|
|
205
|
-
* @returns {string} The stemmed word.
|
|
206
|
-
*/
|
|
207
|
-
export default function stem(word, morphologyData) {
|
|
208
|
-
word.toLowerCase();
|
|
209
|
-
const vowels = morphologyData.externalStemmer.vowels;
|
|
210
|
-
|
|
211
|
-
// Nasal vowels should be treated as a vowel followed by a consonant.
|
|
212
|
-
const nasalVowels = morphologyData.externalStemmer.nasalVowels.originals;
|
|
213
|
-
const nasalVowelsReplacement = morphologyData.externalStemmer.nasalVowels.replacements;
|
|
214
|
-
word = replaceCharacters(word, nasalVowels, nasalVowelsReplacement);
|
|
215
|
-
|
|
216
|
-
const length = word.length;
|
|
217
|
-
if (length < 2) {
|
|
218
|
-
return word;
|
|
219
|
-
}
|
|
220
|
-
|
|
221
|
-
let r1 = length;
|
|
222
|
-
let r2 = length;
|
|
223
|
-
let rv = length;
|
|
224
|
-
|
|
225
|
-
/*
|
|
226
|
-
* R1 is the region after the first non-vowel following a vowel, or is the null region at the end of the word if
|
|
227
|
-
* there is no such non-vowel.
|
|
228
|
-
*/
|
|
229
|
-
for (let i = 0; i < length - 1 && r1 === length; i++) {
|
|
230
|
-
if (isVowel(word[i], vowels) && !isVowel(word[i + 1], vowels)) {
|
|
231
|
-
r1 = i + 2;
|
|
232
|
-
}
|
|
233
|
-
}
|
|
234
|
-
|
|
235
|
-
/*
|
|
236
|
-
* R2 is the region after the first non-vowel following a vowel in R1, or is the null region at the end of the
|
|
237
|
-
* word if there is no such non-vowel.
|
|
238
|
-
*/
|
|
239
|
-
for (let i = r1; i < length - 1 && r2 === length; i++) {
|
|
240
|
-
if (isVowel(word[i], vowels) && !isVowel(word[i + 1], vowels)) {
|
|
241
|
-
r2 = i + 2;
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
|
|
245
|
-
/*
|
|
246
|
-
* If the second letter is a consonant, RV is the region after the next following vowel. If the first two letters are
|
|
247
|
-
* vowels, RV is the region after the next consonant, and otherwise (consonant-vowel case) RV is the region after the
|
|
248
|
-
* third letter. But RV is the end of the word if these positions cannot be found.
|
|
249
|
-
*/
|
|
250
|
-
if (length > 3) {
|
|
251
|
-
if (!isVowel(word[1], vowels)) {
|
|
252
|
-
rv = nextVowelPosition(word, vowels, 2) + 1;
|
|
253
|
-
} else if (isVowel(word[0], vowels) && isVowel(word[1], vowels)) {
|
|
254
|
-
rv = nextConsonantPosition(word, vowels, 2) + 1;
|
|
255
|
-
} else {
|
|
256
|
-
rv = 3;
|
|
257
|
-
}
|
|
258
|
-
}
|
|
259
|
-
|
|
260
|
-
const r1Text = word.slice(r1);
|
|
261
|
-
const r2Text = word.slice(r2);
|
|
262
|
-
let rvText = word.slice(rv);
|
|
263
|
-
|
|
264
|
-
// Go through the first step of removing suffixes.
|
|
265
|
-
const wordAfterStep1 = stemStandardSuffixes(
|
|
266
|
-
word,
|
|
267
|
-
morphologyData.externalStemmer.standardSuffixes,
|
|
268
|
-
r1Text,
|
|
269
|
-
r2Text,
|
|
270
|
-
rvText
|
|
271
|
-
);
|
|
272
|
-
|
|
273
|
-
// If no suffixes were removed in the first step, search for and remove verb suffixes.
|
|
274
|
-
let wordAfterStep2 = '';
|
|
275
|
-
|
|
276
|
-
if (word === wordAfterStep1) {
|
|
277
|
-
wordAfterStep2 = stemVerbSuffixes(word, morphologyData.externalStemmer.verbSuffixes, rvText);
|
|
278
|
-
}
|
|
279
|
-
|
|
280
|
-
// If suffixes were removed in one of the previous steps, replace the word with the de-suffixed word and adjust RV text.
|
|
281
|
-
if (word !== wordAfterStep1) {
|
|
282
|
-
word = wordAfterStep1;
|
|
283
|
-
rvText = word.slice(rv);
|
|
284
|
-
} else if (word !== wordAfterStep2) {
|
|
285
|
-
word = wordAfterStep2;
|
|
286
|
-
rvText = word.slice(rv);
|
|
287
|
-
}
|
|
288
|
-
|
|
289
|
-
/*
|
|
290
|
-
* If a suffix was removed in one of the two previous steps, remove -i if preceded by -c and in RV. If no suffix was
|
|
291
|
-
* removed in one of the previous steps, remove -os, -a, -i, -o, -á, í, or ó if in RV.
|
|
292
|
-
*/
|
|
293
|
-
if (wordAfterStep1 !== word || wordAfterStep2 !== word) {
|
|
294
|
-
if (
|
|
295
|
-
word.endsWith(morphologyData.externalStemmer.ciToC[0]) &&
|
|
296
|
-
rvText.endsWith(morphologyData.externalStemmer.ciToC[1])
|
|
297
|
-
) {
|
|
298
|
-
word = word.slice(0, -1);
|
|
299
|
-
rvText = word.slice(rv);
|
|
300
|
-
}
|
|
301
|
-
} else {
|
|
302
|
-
const foundGeneralSuffix = findMatchingEndingInArray(
|
|
303
|
-
rvText,
|
|
304
|
-
morphologyData.externalStemmer.generalSuffixes
|
|
305
|
-
);
|
|
306
|
-
if (foundGeneralSuffix !== '') {
|
|
307
|
-
word = word.slice(0, -foundGeneralSuffix.length);
|
|
308
|
-
rvText = word.slice(rv);
|
|
309
|
-
}
|
|
310
|
-
}
|
|
311
|
-
|
|
312
|
-
// Stem residual suffixes, regardless of whether a suffix was removed in any of the previous steps or not.
|
|
313
|
-
word = stemResidualSuffixes(word, morphologyData.externalStemmer.residualSuffixes, rvText);
|
|
314
|
-
|
|
315
|
-
// Change the nasal vowel replacements back into the nasal vowels.
|
|
316
|
-
word = replaceCharacters(word, nasalVowelsReplacement, nasalVowels);
|
|
317
|
-
|
|
318
|
-
return word;
|
|
319
|
-
}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import {languageProcessing} from '../../../index';
|
|
2
|
-
import {cannotDirectlyPrecedePassiveParticiple} from '../config/functionWords';
|
|
3
|
-
import getParticiples from '../helpers/internal/getParticiples';
|
|
4
|
-
const {directPrecedenceException, values} = languageProcessing;
|
|
5
|
-
const {Clause} = values;
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Creates a Clause object for the Portuguese language.
|
|
9
|
-
*/
|
|
10
|
-
class PortugueseClause extends Clause {
|
|
11
|
-
/**
|
|
12
|
-
* Constructor.
|
|
13
|
-
*
|
|
14
|
-
* @param {string} clauseText The text of the clause.
|
|
15
|
-
* @param {Array} auxiliaries The auxiliaries.
|
|
16
|
-
*
|
|
17
|
-
* @constructor
|
|
18
|
-
*/
|
|
19
|
-
constructor(clauseText, auxiliaries) {
|
|
20
|
-
super(clauseText, auxiliaries);
|
|
21
|
-
this._participles = getParticiples(this.getClauseText());
|
|
22
|
-
this.checkParticiples();
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* Checks if any exceptions are applicable to this participle that would result in the clause not being passive.
|
|
27
|
-
* If no exceptions are found, the clause is passive.
|
|
28
|
-
*
|
|
29
|
-
* @returns {void}
|
|
30
|
-
*/
|
|
31
|
-
checkParticiples() {
|
|
32
|
-
const clause = this.getClauseText();
|
|
33
|
-
|
|
34
|
-
const foundParticiples = this.getParticiples().filter(
|
|
35
|
-
participle =>
|
|
36
|
-
!directPrecedenceException(clause, participle, cannotDirectlyPrecedePassiveParticiple)
|
|
37
|
-
);
|
|
38
|
-
|
|
39
|
-
this.setPassive(foundParticiples.length > 0);
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
export default PortugueseClause;
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import {languageProcessing} from '../../../index';
|
|
2
|
-
const {AbstractResearcher} = languageProcessing;
|
|
3
|
-
|
|
4
|
-
// All config
|
|
5
|
-
import firstWordExceptions from './config/firstWordExceptions';
|
|
6
|
-
import {all as functionWords} from './config/functionWords';
|
|
7
|
-
import transitionWords from './config/transitionWords';
|
|
8
|
-
import twoPartTransitionWords from './config/twoPartTransitionWords';
|
|
9
|
-
import syllables from './config/syllables.json';
|
|
10
|
-
import fleschReadingEaseScores from './config/fleschReadingEaseScores';
|
|
11
|
-
import sentenceLength from './config/sentenceLength';
|
|
12
|
-
|
|
13
|
-
// All helpers
|
|
14
|
-
import getStemmer from './helpers/getStemmer';
|
|
15
|
-
import isPassiveSentence from './helpers/isPassiveSentence';
|
|
16
|
-
import fleschReadingScore from './helpers/calculateFleschReadingScore';
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* The researcher contains all the researches, helpers, data, and config.
|
|
20
|
-
*/
|
|
21
|
-
export default class Researcher extends AbstractResearcher {
|
|
22
|
-
/**
|
|
23
|
-
* Constructor
|
|
24
|
-
* @param {Paper} paper The Paper object that is needed within the researches.
|
|
25
|
-
* @constructor
|
|
26
|
-
*/
|
|
27
|
-
constructor(paper) {
|
|
28
|
-
super(paper);
|
|
29
|
-
|
|
30
|
-
Object.assign(this.config, {
|
|
31
|
-
language: 'ru',
|
|
32
|
-
passiveConstructionType: 'morphological',
|
|
33
|
-
firstWordExceptions,
|
|
34
|
-
functionWords,
|
|
35
|
-
transitionWords,
|
|
36
|
-
twoPartTransitionWords,
|
|
37
|
-
syllables,
|
|
38
|
-
fleschReadingEaseScores,
|
|
39
|
-
sentenceLength
|
|
40
|
-
});
|
|
41
|
-
|
|
42
|
-
Object.assign(this.helpers, {
|
|
43
|
-
getStemmer,
|
|
44
|
-
isPassiveSentence,
|
|
45
|
-
fleschReadingScore
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Returns an array with exceptions for the sentence beginning researcher.
|
|
3
|
-
* @returns {Array} The array filled with exceptions.
|
|
4
|
-
* */
|
|
5
|
-
export default [
|
|
6
|
-
// Numbers 1-10:
|
|
7
|
-
"один", "одна", "одно", "два", "две", "три", "четыре", "пять", "шесть", "семь", "восемь", "девять", "десять",
|
|
8
|
-
// Demonstrative pronouns: тот, этот, такой, таков, столько
|
|
9
|
-
"этот", "этого", "этому", "этим", "этом", "эта", "этой", "эту", "это", "этого", "этому", "эти", "этих", "этим",
|
|
10
|
-
"этими", "тот", "того", "тому", "тем", "том", "та", "той", "ту", "те", "тех", "тем", "теми", "тех", "такой",
|
|
11
|
-
"такого", "такому", "таким", "такая", "такую", "такое", "такие", "таких", "таким", "такими", "стольких",
|
|
12
|
-
"стольким", "столько", "столькими", "вот",
|
|
13
|
-
];
|
|
14
|
-
|