axyseo 2.0.0-alpha.2 → 2.1.0
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/config/diacritics.js +1 -7
- package/build/config/diacritics.js.map +1 -1
- package/build/config/getTransliterations.js +6 -14
- package/build/config/getTransliterations.js.map +1 -1
- package/build/config/transliterationsWPstyle.js +5 -12
- package/build/config/transliterationsWPstyle.js.map +1 -1
- package/build/config/wordBoundaries.js +1 -7
- package/build/config/wordBoundaries.js.map +1 -1
- package/build/config/wordBoundariesWithoutPunctuation.js +2 -8
- package/build/config/wordBoundariesWithoutPunctuation.js.map +1 -1
- package/build/const/analysis.js +32 -11
- package/build/const/analysis.js.map +1 -1
- package/build/errors/invalidType.js +1 -8
- package/build/errors/invalidType.js.map +1 -1
- package/build/errors/missingArgument.js +1 -8
- package/build/errors/missingArgument.js.map +1 -1
- package/build/helpers/createMeasurementElement.js +1 -8
- package/build/helpers/createMeasurementElement.js.map +1 -1
- package/build/helpers/domManipulation.js +3 -8
- package/build/helpers/domManipulation.js.map +1 -1
- package/build/helpers/errors.js +5 -10
- package/build/helpers/errors.js.map +1 -1
- package/build/helpers/factory.js +7 -13
- package/build/helpers/factory.js.map +1 -1
- package/build/helpers/formatNumber.js +1 -7
- package/build/helpers/formatNumber.js.map +1 -1
- package/build/helpers/formatString.js +4 -9
- package/build/helpers/formatString.js.map +1 -1
- package/build/helpers/getLanguagesWithWordComplexity.js +1 -7
- package/build/helpers/getLanguagesWithWordComplexity.js.map +1 -1
- package/build/helpers/getLanguagesWithWordFormSupport.js +1 -7
- package/build/helpers/getLanguagesWithWordFormSupport.js.map +1 -1
- package/build/helpers/getWordComplexityConfig.js +9 -15
- package/build/helpers/getWordComplexityConfig.js.map +1 -1
- package/build/helpers/getWordComplexityHelper.js +9 -15
- package/build/helpers/getWordComplexityHelper.js.map +1 -1
- package/build/helpers/htmlEntities.js +6 -11
- package/build/helpers/htmlEntities.js.map +1 -1
- package/build/helpers/includesAny.js +3 -8
- package/build/helpers/includesAny.js.map +1 -1
- package/build/helpers/index.js +30 -72
- package/build/helpers/index.js.map +1 -1
- package/build/helpers/shortlinker/Shortlinker.js +1 -8
- package/build/helpers/shortlinker/Shortlinker.js.map +1 -1
- package/build/helpers/shortlinker/index.js +1 -16
- package/build/helpers/shortlinker/index.js.map +1 -1
- package/build/helpers/shortlinker/singleton.js +5 -13
- package/build/helpers/shortlinker/singleton.js.map +1 -1
- package/build/helpers/types.js +2 -9
- package/build/helpers/types.js.map +1 -1
- package/build/index.js +25 -87
- package/build/index.js.map +1 -1
- package/build/languageProcessing/AbstractResearcher.js +88 -95
- package/build/languageProcessing/AbstractResearcher.js.map +1 -1
- package/build/languageProcessing/helpers/highlighting/getMarkingsInSentence.js +3 -10
- package/build/languageProcessing/helpers/highlighting/getMarkingsInSentence.js.map +1 -1
- package/build/languageProcessing/helpers/html/getFieldsToMark.js +6 -11
- package/build/languageProcessing/helpers/html/getFieldsToMark.js.map +1 -1
- package/build/languageProcessing/helpers/html/getSubheadingTexts.js +3 -8
- package/build/languageProcessing/helpers/html/getSubheadingTexts.js.map +1 -1
- package/build/languageProcessing/helpers/html/getSubheadings.js +2 -12
- package/build/languageProcessing/helpers/html/getSubheadings.js.map +1 -1
- package/build/languageProcessing/helpers/html/html.js +9 -17
- package/build/languageProcessing/helpers/html/html.js.map +1 -1
- package/build/languageProcessing/helpers/html/htmlParser.js +3 -10
- package/build/languageProcessing/helpers/html/htmlParser.js.map +1 -1
- package/build/languageProcessing/helpers/html/matchParagraphs.js +7 -12
- package/build/languageProcessing/helpers/html/matchParagraphs.js.map +1 -1
- package/build/languageProcessing/helpers/html/normalizeHTML.js +4 -10
- package/build/languageProcessing/helpers/html/normalizeHTML.js.map +1 -1
- package/build/languageProcessing/helpers/image/getAltAttribute.js +3 -9
- package/build/languageProcessing/helpers/image/getAltAttribute.js.map +1 -1
- package/build/languageProcessing/helpers/image/getImagesInTree.js +1 -7
- package/build/languageProcessing/helpers/image/getImagesInTree.js.map +1 -1
- package/build/languageProcessing/helpers/image/imageInText.js +5 -12
- package/build/languageProcessing/helpers/image/imageInText.js.map +1 -1
- package/build/languageProcessing/helpers/index.js +5 -40
- package/build/languageProcessing/helpers/index.js.map +1 -1
- package/build/languageProcessing/helpers/language/getLanguage.js +1 -7
- package/build/languageProcessing/helpers/language/getLanguage.js.map +1 -1
- package/build/languageProcessing/helpers/link/checkNofollow.js +3 -10
- package/build/languageProcessing/helpers/link/checkNofollow.js.map +1 -1
- package/build/languageProcessing/helpers/link/getAnchorsFromText.js +1 -7
- package/build/languageProcessing/helpers/link/getAnchorsFromText.js.map +1 -1
- package/build/languageProcessing/helpers/link/getLinkType.js +7 -13
- package/build/languageProcessing/helpers/link/getLinkType.js.map +1 -1
- package/build/languageProcessing/helpers/match/findKeywordFormsInString.js +10 -17
- package/build/languageProcessing/helpers/match/findKeywordFormsInString.js.map +1 -1
- package/build/languageProcessing/helpers/match/isDoubleQuoted.js +4 -10
- package/build/languageProcessing/helpers/match/isDoubleQuoted.js.map +1 -1
- package/build/languageProcessing/helpers/match/matchTextWithArray.js +6 -12
- package/build/languageProcessing/helpers/match/matchTextWithArray.js.map +1 -1
- package/build/languageProcessing/helpers/match/matchTextWithTransliteration.js +16 -22
- package/build/languageProcessing/helpers/match/matchTextWithTransliteration.js.map +1 -1
- package/build/languageProcessing/helpers/match/matchTextWithWord.js +17 -23
- package/build/languageProcessing/helpers/match/matchTextWithWord.js.map +1 -1
- package/build/languageProcessing/helpers/match/matchWordFormsWithSentence.js +7 -15
- package/build/languageProcessing/helpers/match/matchWordFormsWithSentence.js.map +1 -1
- package/build/languageProcessing/helpers/match/processExactMatchRequest.js +3 -9
- package/build/languageProcessing/helpers/match/processExactMatchRequest.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/baseStemmer.js +1 -7
- package/build/languageProcessing/helpers/morphology/baseStemmer.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/buildFormRule.js +1 -7
- package/build/languageProcessing/helpers/morphology/buildFormRule.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/buildTopicStems.js +13 -23
- package/build/languageProcessing/helpers/morphology/buildTopicStems.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/createRulesFromArrays.js +2 -9
- package/build/languageProcessing/helpers/morphology/createRulesFromArrays.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/exceptionListHelpers.js +5 -13
- package/build/languageProcessing/helpers/morphology/exceptionListHelpers.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/findMatchingEndingInArray.js +1 -7
- package/build/languageProcessing/helpers/morphology/findMatchingEndingInArray.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/flattenSortLength.js +3 -8
- package/build/languageProcessing/helpers/morphology/flattenSortLength.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/getAllWordsFromPaper.js +12 -18
- package/build/languageProcessing/helpers/morphology/getAllWordsFromPaper.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/regexHelpers.js +3 -11
- package/build/languageProcessing/helpers/morphology/regexHelpers.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/stemHelpers.js +2 -9
- package/build/languageProcessing/helpers/morphology/stemHelpers.js.map +1 -1
- package/build/languageProcessing/helpers/morphology/stemPrefixedFunctionWords.js +1 -7
- package/build/languageProcessing/helpers/morphology/stemPrefixedFunctionWords.js.map +1 -1
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/directPrecedenceException.js +5 -11
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/directPrecedenceException.js.map +1 -1
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/getClausesSplitOnStopWords.js +9 -15
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/getClausesSplitOnStopWords.js.map +1 -1
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/nonDirectParticiplePrecedenceException.js +9 -15
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/freeAuxiliaryParticipleOrder/nonDirectParticiplePrecedenceException.js.map +1 -1
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/getClauses.js +28 -34
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/getClauses.js.map +1 -1
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/getIndicesWithRegex.js +1 -7
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/getIndicesWithRegex.js.map +1 -1
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/matchRegularParticiples.js +3 -8
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/matchRegularParticiples.js.map +1 -1
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/precedenceException.js +5 -11
- package/build/languageProcessing/helpers/passiveVoice/periphrastic/precedenceException.js.map +1 -1
- package/build/languageProcessing/helpers/prominentWords/determineProminentWords.js +16 -28
- package/build/languageProcessing/helpers/prominentWords/determineProminentWords.js.map +1 -1
- package/build/languageProcessing/helpers/regex/createRegexFromArray.js +10 -16
- package/build/languageProcessing/helpers/regex/createRegexFromArray.js.map +1 -1
- package/build/languageProcessing/helpers/regex/createRegexFromDoubleArray.js +4 -10
- package/build/languageProcessing/helpers/regex/createRegexFromDoubleArray.js.map +1 -1
- package/build/languageProcessing/helpers/regex/createWordRegex.js +12 -18
- package/build/languageProcessing/helpers/regex/createWordRegex.js.map +1 -1
- package/build/languageProcessing/helpers/regex/matchStringWithRegex.js +1 -7
- package/build/languageProcessing/helpers/regex/matchStringWithRegex.js.map +1 -1
- package/build/languageProcessing/helpers/regex/searchAndReplaceWithOneRegex.js +1 -7
- package/build/languageProcessing/helpers/regex/searchAndReplaceWithOneRegex.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/doubleQuotes.js +1 -7
- package/build/languageProcessing/helpers/sanitize/doubleQuotes.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/filterShortcodesFromTree.js +3 -11
- package/build/languageProcessing/helpers/sanitize/filterShortcodesFromTree.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/mergeListItems.js +1 -7
- package/build/languageProcessing/helpers/sanitize/mergeListItems.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/parseSynonyms.js +5 -11
- package/build/languageProcessing/helpers/sanitize/parseSynonyms.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/quotes.js +4 -12
- package/build/languageProcessing/helpers/sanitize/quotes.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/removeEmailAddresses.js +1 -7
- package/build/languageProcessing/helpers/sanitize/removeEmailAddresses.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/removePunctuation.js +7 -13
- package/build/languageProcessing/helpers/sanitize/removePunctuation.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/removePunctuationExceptQuotes.js +1 -7
- package/build/languageProcessing/helpers/sanitize/removePunctuationExceptQuotes.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/removeSentenceTerminators.js +1 -7
- package/build/languageProcessing/helpers/sanitize/removeSentenceTerminators.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/removeURLs.js +1 -7
- package/build/languageProcessing/helpers/sanitize/removeURLs.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/sanitizeLineBreakTag.js +1 -7
- package/build/languageProcessing/helpers/sanitize/sanitizeLineBreakTag.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/sanitizeString.js +5 -10
- package/build/languageProcessing/helpers/sanitize/sanitizeString.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/stripHTMLTags.js +7 -16
- package/build/languageProcessing/helpers/sanitize/stripHTMLTags.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/stripNonTextTags.js +4 -10
- package/build/languageProcessing/helpers/sanitize/stripNonTextTags.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/stripNumbers.js +4 -10
- package/build/languageProcessing/helpers/sanitize/stripNumbers.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/stripSpaces.js +1 -7
- package/build/languageProcessing/helpers/sanitize/stripSpaces.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/stripWordBoundaries.js +2 -10
- package/build/languageProcessing/helpers/sanitize/stripWordBoundaries.js.map +1 -1
- package/build/languageProcessing/helpers/sanitize/unifyWhitespace.js +2 -11
- package/build/languageProcessing/helpers/sanitize/unifyWhitespace.js.map +1 -1
- package/build/languageProcessing/helpers/sentence/SentenceTokenizer.js +22 -29
- package/build/languageProcessing/helpers/sentence/SentenceTokenizer.js.map +1 -1
- package/build/languageProcessing/helpers/sentence/countSentences.js +4 -10
- package/build/languageProcessing/helpers/sentence/countSentences.js.map +1 -1
- package/build/languageProcessing/helpers/sentence/getSentences.js +13 -20
- package/build/languageProcessing/helpers/sentence/getSentences.js.map +1 -1
- package/build/languageProcessing/helpers/sentence/getSentencesFromTree.js +2 -9
- package/build/languageProcessing/helpers/sentence/getSentencesFromTree.js.map +1 -1
- package/build/languageProcessing/helpers/sentence/memoizedSentenceTokenizer.js +4 -10
- package/build/languageProcessing/helpers/sentence/memoizedSentenceTokenizer.js.map +1 -1
- package/build/languageProcessing/helpers/sentence/sentencesLength.js +7 -13
- package/build/languageProcessing/helpers/sentence/sentencesLength.js.map +1 -1
- package/build/languageProcessing/helpers/syllables/DeviationFragment.js +5 -11
- package/build/languageProcessing/helpers/syllables/DeviationFragment.js.map +1 -1
- package/build/languageProcessing/helpers/syllables/countSyllables.js +23 -30
- package/build/languageProcessing/helpers/syllables/countSyllables.js.map +1 -1
- package/build/languageProcessing/helpers/syllables/syllableCountIterator.js +7 -14
- package/build/languageProcessing/helpers/syllables/syllableCountIterator.js.map +1 -1
- package/build/languageProcessing/helpers/syllables/syllableCountStep.js +5 -12
- package/build/languageProcessing/helpers/syllables/syllableCountStep.js.map +1 -1
- package/build/languageProcessing/helpers/transform/transformWordsWithHyphens.js +1 -7
- package/build/languageProcessing/helpers/transform/transformWordsWithHyphens.js.map +1 -1
- package/build/languageProcessing/helpers/transliterate/replaceDiacritics.js +4 -10
- package/build/languageProcessing/helpers/transliterate/replaceDiacritics.js.map +1 -1
- package/build/languageProcessing/helpers/transliterate/specialCharacterMappings.js +12 -23
- package/build/languageProcessing/helpers/transliterate/specialCharacterMappings.js.map +1 -1
- package/build/languageProcessing/helpers/transliterate/transliterate.js +3 -9
- package/build/languageProcessing/helpers/transliterate/transliterate.js.map +1 -1
- package/build/languageProcessing/helpers/transliterate/transliterateWPstyle.js +3 -9
- package/build/languageProcessing/helpers/transliterate/transliterateWPstyle.js.map +1 -1
- package/build/languageProcessing/helpers/url/parseSlug.js +1 -7
- package/build/languageProcessing/helpers/url/parseSlug.js.map +1 -1
- package/build/languageProcessing/helpers/url/url.js +7 -13
- package/build/languageProcessing/helpers/url/url.js.map +1 -1
- package/build/languageProcessing/helpers/word/addWordboundary.js +1 -7
- package/build/languageProcessing/helpers/word/addWordboundary.js.map +1 -1
- package/build/languageProcessing/helpers/word/areWordsInSentence.js +4 -10
- package/build/languageProcessing/helpers/word/areWordsInSentence.js.map +1 -1
- package/build/languageProcessing/helpers/word/countMetaDescriptionLength.js +1 -7
- package/build/languageProcessing/helpers/word/countMetaDescriptionLength.js.map +1 -1
- package/build/languageProcessing/helpers/word/countWords.js +4 -10
- package/build/languageProcessing/helpers/word/countWords.js.map +1 -1
- package/build/languageProcessing/helpers/word/createPunctuationTokens.js +5 -10
- package/build/languageProcessing/helpers/word/createPunctuationTokens.js.map +1 -1
- package/build/languageProcessing/helpers/word/filterWordsFromArray.js +4 -9
- package/build/languageProcessing/helpers/word/filterWordsFromArray.js.map +1 -1
- package/build/languageProcessing/helpers/word/followsIndex.js +5 -10
- package/build/languageProcessing/helpers/word/followsIndex.js.map +1 -1
- package/build/languageProcessing/helpers/word/getAllWordsFromTree.js +7 -13
- package/build/languageProcessing/helpers/word/getAllWordsFromTree.js.map +1 -1
- package/build/languageProcessing/helpers/word/getWords.js +9 -19
- package/build/languageProcessing/helpers/word/getWords.js.map +1 -1
- package/build/languageProcessing/helpers/word/includesIndex.js +5 -10
- package/build/languageProcessing/helpers/word/includesIndex.js.map +1 -1
- package/build/languageProcessing/helpers/word/indices.js +14 -25
- package/build/languageProcessing/helpers/word/indices.js.map +1 -1
- package/build/languageProcessing/helpers/word/markWordsInSentences.js +23 -35
- package/build/languageProcessing/helpers/word/markWordsInSentences.js.map +1 -1
- package/build/languageProcessing/helpers/word/matchWordInSentence.js +8 -15
- package/build/languageProcessing/helpers/word/matchWordInSentence.js.map +1 -1
- package/build/languageProcessing/helpers/word/splitIntoTokens.js +3 -9
- package/build/languageProcessing/helpers/word/splitIntoTokens.js.map +1 -1
- package/build/languageProcessing/index.js +41 -282
- package/build/languageProcessing/index.js.map +1 -1
- package/build/languageProcessing/languages/_default/Researcher.js +5 -13
- package/build/languageProcessing/languages/_default/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/_default/helpers/getStemmer.js +3 -9
- package/build/languageProcessing/languages/_default/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/ar/Researcher.js +19 -27
- package/build/languageProcessing/languages/ar/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/ar/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/ar/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/ar/config/functionWords.js +7 -13
- package/build/languageProcessing/languages/ar/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/ar/config/internal/passiveVerbsWithLongVowel.js +1 -7
- package/build/languageProcessing/languages/ar/config/internal/passiveVerbsWithLongVowel.js.map +1 -1
- package/build/languageProcessing/languages/ar/config/prefixedFunctionWords.js +2 -8
- package/build/languageProcessing/languages/ar/config/prefixedFunctionWords.js.map +1 -1
- package/build/languageProcessing/languages/ar/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/ar/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/ar/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/ar/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/ar/helpers/createBasicWordForms.js +6 -11
- package/build/languageProcessing/languages/ar/helpers/createBasicWordForms.js.map +1 -1
- package/build/languageProcessing/languages/ar/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/ar/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/ar/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/ar/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/ar/helpers/isPassiveSentence.js +5 -12
- package/build/languageProcessing/languages/ar/helpers/isPassiveSentence.js.map +1 -1
- package/build/languageProcessing/languages/ca/Researcher.js +11 -19
- package/build/languageProcessing/languages/ca/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/ca/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/ca/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/ca/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/ca/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/ca/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/ca/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/ca/helpers/getStemmer.js +3 -9
- package/build/languageProcessing/languages/ca/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/cs/Researcher.js +17 -25
- package/build/languageProcessing/languages/cs/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/cs/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/cs/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/cs/config/functionWords.js +4 -10
- package/build/languageProcessing/languages/cs/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/cs/config/internal/passiveVoiceAuxiliaries.js +2 -8
- package/build/languageProcessing/languages/cs/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/cs/config/internal/passiveVoiceEndings.js +2 -8
- package/build/languageProcessing/languages/cs/config/internal/passiveVoiceEndings.js.map +1 -1
- package/build/languageProcessing/languages/cs/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/cs/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/cs/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/cs/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/cs/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/cs/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/cs/helpers/getClauses.js +9 -16
- package/build/languageProcessing/languages/cs/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/cs/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/cs/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/cs/helpers/internal/getParticiples.js +6 -12
- package/build/languageProcessing/languages/cs/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/cs/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/cs/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/cs/values/Clause.js +5 -12
- package/build/languageProcessing/languages/cs/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/de/Researcher.js +27 -35
- package/build/languageProcessing/languages/de/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/de/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/de/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/de/config/functionWords.js +11 -19
- package/build/languageProcessing/languages/de/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/de/config/internal/exceptionsParticiplesActive.js +1 -7
- package/build/languageProcessing/languages/de/config/internal/exceptionsParticiplesActive.js.map +1 -1
- package/build/languageProcessing/languages/de/config/internal/passiveVoiceAuxiliaries.js +4 -10
- package/build/languageProcessing/languages/de/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/de/config/internal/passiveVoiceIrregulars.js +1 -7
- package/build/languageProcessing/languages/de/config/internal/passiveVoiceIrregulars.js.map +1 -1
- package/build/languageProcessing/languages/de/config/internal/passiveVoiceRegex.js +1 -7
- package/build/languageProcessing/languages/de/config/internal/passiveVoiceRegex.js.map +1 -1
- package/build/languageProcessing/languages/de/config/keyphraseLength.js +1 -7
- package/build/languageProcessing/languages/de/config/keyphraseLength.js.map +1 -1
- package/build/languageProcessing/languages/de/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/de/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/de/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/de/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/de/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/de/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/de/config/wordComplexity.js +1 -7
- package/build/languageProcessing/languages/de/config/wordComplexity.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/calculateFleschReadingScore.js +3 -9
- package/build/languageProcessing/languages/de/helpers/calculateFleschReadingScore.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/checkIfWordIsComplex.js +1 -7
- package/build/languageProcessing/languages/de/helpers/checkIfWordIsComplex.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/checkIfWordIsFunction.js +3 -8
- package/build/languageProcessing/languages/de/helpers/checkIfWordIsFunction.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/getClauses.js +9 -16
- package/build/languageProcessing/languages/de/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/de/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/internal/SentenceTokenizer.js +4 -11
- package/build/languageProcessing/languages/de/helpers/internal/SentenceTokenizer.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/internal/detectAndStemRegularParticiple.js +4 -10
- package/build/languageProcessing/languages/de/helpers/internal/detectAndStemRegularParticiple.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/internal/determineStem.js +10 -16
- package/build/languageProcessing/languages/de/helpers/internal/determineStem.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/internal/getParticiples.js +9 -16
- package/build/languageProcessing/languages/de/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/de/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/de/helpers/memoizedSentenceTokenizer.js +4 -10
- package/build/languageProcessing/languages/de/helpers/memoizedSentenceTokenizer.js.map +1 -1
- package/build/languageProcessing/languages/de/values/Clause.js +11 -18
- package/build/languageProcessing/languages/de/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/el/Researcher.js +18 -26
- package/build/languageProcessing/languages/el/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/el/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/el/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/el/config/functionWords.js +4 -10
- package/build/languageProcessing/languages/el/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/el/config/internal/auxiliaries.js +1 -7
- package/build/languageProcessing/languages/el/config/internal/auxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/el/config/internal/morphologicalPassiveSuffixes.js +1 -7
- package/build/languageProcessing/languages/el/config/internal/morphologicalPassiveSuffixes.js.map +1 -1
- package/build/languageProcessing/languages/el/config/internal/nonPassiveVerbStems.js +1 -7
- package/build/languageProcessing/languages/el/config/internal/nonPassiveVerbStems.js.map +1 -1
- package/build/languageProcessing/languages/el/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/el/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/el/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/el/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/el/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/el/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/el/helpers/getClauses.js +9 -16
- package/build/languageProcessing/languages/el/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/el/helpers/getStemmer.js +7 -14
- package/build/languageProcessing/languages/el/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/el/helpers/internal/getParticiples.js +3 -9
- package/build/languageProcessing/languages/el/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/el/helpers/internal/stem.js +4 -13
- package/build/languageProcessing/languages/el/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/el/helpers/isPassiveSentence.js +7 -14
- package/build/languageProcessing/languages/el/helpers/isPassiveSentence.js.map +1 -1
- package/build/languageProcessing/languages/el/values/Clause.js +6 -12
- package/build/languageProcessing/languages/el/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/en/Researcher.js +21 -29
- package/build/languageProcessing/languages/en/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/en/config/abbreviations.js +2 -8
- package/build/languageProcessing/languages/en/config/abbreviations.js.map +1 -1
- package/build/languageProcessing/languages/en/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/en/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/en/config/functionWords.js +11 -18
- package/build/languageProcessing/languages/en/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/en/config/internal/passiveVoiceAuxiliaries.js +6 -12
- package/build/languageProcessing/languages/en/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/en/config/internal/passiveVoiceIrregulars.js +1 -7
- package/build/languageProcessing/languages/en/config/internal/passiveVoiceIrregulars.js.map +1 -1
- package/build/languageProcessing/languages/en/config/internal/passiveVoiceNonVerbEndingEd.js +1 -7
- package/build/languageProcessing/languages/en/config/internal/passiveVoiceNonVerbEndingEd.js.map +1 -1
- package/build/languageProcessing/languages/en/config/regularParticiplesRegex.js +1 -7
- package/build/languageProcessing/languages/en/config/regularParticiplesRegex.js.map +1 -1
- package/build/languageProcessing/languages/en/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/en/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/en/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/en/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/en/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/en/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/en/config/wordComplexity.js +1 -7
- package/build/languageProcessing/languages/en/config/wordComplexity.js.map +1 -1
- package/build/languageProcessing/languages/en/helpers/calculateFleschReadingScore.js +3 -9
- package/build/languageProcessing/languages/en/helpers/calculateFleschReadingScore.js.map +1 -1
- package/build/languageProcessing/languages/en/helpers/checkIfWordIsComplex.js +4 -10
- package/build/languageProcessing/languages/en/helpers/checkIfWordIsComplex.js.map +1 -1
- package/build/languageProcessing/languages/en/helpers/getClauses.js +15 -22
- package/build/languageProcessing/languages/en/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/en/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/en/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/en/helpers/internal/determineStem.js +21 -32
- package/build/languageProcessing/languages/en/helpers/internal/determineStem.js.map +1 -1
- package/build/languageProcessing/languages/en/helpers/internal/getAdjectiveStem.js +6 -13
- package/build/languageProcessing/languages/en/helpers/internal/getAdjectiveStem.js.map +1 -1
- package/build/languageProcessing/languages/en/helpers/internal/getParticiples.js +8 -14
- package/build/languageProcessing/languages/en/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/en/helpers/internal/getVerbStem.js +6 -16
- package/build/languageProcessing/languages/en/helpers/internal/getVerbStem.js.map +1 -1
- package/build/languageProcessing/languages/en/values/Clause.js +10 -17
- package/build/languageProcessing/languages/en/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/es/Researcher.js +23 -31
- package/build/languageProcessing/languages/es/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/es/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/es/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/es/config/functionWords.js +11 -17
- package/build/languageProcessing/languages/es/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/es/config/internal/passiveVoiceAuxiliaries.js +1 -7
- package/build/languageProcessing/languages/es/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/es/config/internal/passiveVoiceParticiples.js +1 -7
- package/build/languageProcessing/languages/es/config/internal/passiveVoiceParticiples.js.map +1 -1
- package/build/languageProcessing/languages/es/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/es/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/es/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/es/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/es/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/es/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/es/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/es/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/es/config/wordComplexity.js +1 -7
- package/build/languageProcessing/languages/es/config/wordComplexity.js.map +1 -1
- package/build/languageProcessing/languages/es/helpers/calculateFleschReadingScore.js +3 -9
- package/build/languageProcessing/languages/es/helpers/calculateFleschReadingScore.js.map +1 -1
- package/build/languageProcessing/languages/es/helpers/checkIfWordIsComplex.js +1 -7
- package/build/languageProcessing/languages/es/helpers/checkIfWordIsComplex.js.map +1 -1
- package/build/languageProcessing/languages/es/helpers/getClauses.js +10 -17
- package/build/languageProcessing/languages/es/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/es/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/es/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/es/helpers/internal/checkVerbStemModifications.js +7 -13
- package/build/languageProcessing/languages/es/helpers/internal/checkVerbStemModifications.js.map +1 -1
- package/build/languageProcessing/languages/es/helpers/internal/getParticiples.js +6 -12
- package/build/languageProcessing/languages/es/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/es/helpers/internal/stem.js +5 -13
- package/build/languageProcessing/languages/es/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/es/values/Clause.js +7 -14
- package/build/languageProcessing/languages/es/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/fa/Researcher.js +19 -27
- package/build/languageProcessing/languages/fa/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/fa/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/fa/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/fa/config/functionWords.js +4 -10
- package/build/languageProcessing/languages/fa/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/fa/config/internal/participles.js +1 -7
- package/build/languageProcessing/languages/fa/config/internal/participles.js.map +1 -1
- package/build/languageProcessing/languages/fa/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/fa/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/fa/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/fa/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/fa/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/fa/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/fa/helpers/createBasicWordForms.js +3 -9
- package/build/languageProcessing/languages/fa/helpers/createBasicWordForms.js.map +1 -1
- package/build/languageProcessing/languages/fa/helpers/getStemmer.js +3 -9
- package/build/languageProcessing/languages/fa/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/fa/helpers/isPassiveSentence.js +6 -12
- package/build/languageProcessing/languages/fa/helpers/isPassiveSentence.js.map +1 -1
- package/build/languageProcessing/languages/fr/Researcher.js +21 -29
- package/build/languageProcessing/languages/fr/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/fr/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/fr/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/fr/config/functionWords.js +11 -17
- package/build/languageProcessing/languages/fr/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/fr/config/internal/exceptionsParticiplesActive.js +4 -9
- package/build/languageProcessing/languages/fr/config/internal/exceptionsParticiplesActive.js.map +1 -1
- package/build/languageProcessing/languages/fr/config/internal/passiveVoiceAuxiliaries.js +1 -7
- package/build/languageProcessing/languages/fr/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/fr/config/internal/passiveVoiceIrregulars.js +4 -9
- package/build/languageProcessing/languages/fr/config/internal/passiveVoiceIrregulars.js.map +1 -1
- package/build/languageProcessing/languages/fr/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/fr/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/fr/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/fr/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/fr/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/fr/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/fr/config/wordComplexity.js +1 -7
- package/build/languageProcessing/languages/fr/config/wordComplexity.js.map +1 -1
- package/build/languageProcessing/languages/fr/helpers/calculateFleschReadingScore.js +3 -9
- package/build/languageProcessing/languages/fr/helpers/calculateFleschReadingScore.js.map +1 -1
- package/build/languageProcessing/languages/fr/helpers/checkIfWordIsComplex.js +3 -9
- package/build/languageProcessing/languages/fr/helpers/checkIfWordIsComplex.js.map +1 -1
- package/build/languageProcessing/languages/fr/helpers/getClauses.js +10 -17
- package/build/languageProcessing/languages/fr/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/fr/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/fr/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/fr/helpers/internal/getParticiples.js +11 -16
- package/build/languageProcessing/languages/fr/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/fr/helpers/internal/stem.js +3 -10
- package/build/languageProcessing/languages/fr/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/fr/values/Clause.js +14 -20
- package/build/languageProcessing/languages/fr/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/he/Researcher.js +21 -29
- package/build/languageProcessing/languages/he/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/he/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/he/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/he/config/functionWords.js +4 -11
- package/build/languageProcessing/languages/he/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/he/config/internal/regularRootsHufal.js +1 -7
- package/build/languageProcessing/languages/he/config/internal/regularRootsHufal.js.map +1 -1
- package/build/languageProcessing/languages/he/config/internal/regularRootsNifal.js +1 -7
- package/build/languageProcessing/languages/he/config/internal/regularRootsNifal.js.map +1 -1
- package/build/languageProcessing/languages/he/config/internal/regularRootsPual.js +1 -7
- package/build/languageProcessing/languages/he/config/internal/regularRootsPual.js.map +1 -1
- package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsHufal.js +1 -7
- package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsHufal.js.map +1 -1
- package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsNifal.js +1 -7
- package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsNifal.js.map +1 -1
- package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsPual.js +1 -7
- package/build/languageProcessing/languages/he/config/passiveVoice/regularRootsPual.js.map +1 -1
- package/build/languageProcessing/languages/he/config/prefixedFunctionWords.js +2 -8
- package/build/languageProcessing/languages/he/config/prefixedFunctionWords.js.map +1 -1
- package/build/languageProcessing/languages/he/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/he/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/he/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/he/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/he/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/he/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/he/helpers/createBasicWordForms.js +6 -11
- package/build/languageProcessing/languages/he/helpers/createBasicWordForms.js.map +1 -1
- package/build/languageProcessing/languages/he/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/he/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/he/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/he/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/he/helpers/isPassiveSentence.js +10 -16
- package/build/languageProcessing/languages/he/helpers/isPassiveSentence.js.map +1 -1
- package/build/languageProcessing/languages/he/helpers/stem.js +1 -7
- package/build/languageProcessing/languages/he/helpers/stem.js.map +1 -1
- package/build/languageProcessing/languages/hu/Researcher.js +19 -27
- package/build/languageProcessing/languages/hu/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/hu/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/functionWords.js +4 -10
- package/build/languageProcessing/languages/hu/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/internal/auxiliaries.js +1 -7
- package/build/languageProcessing/languages/hu/config/internal/auxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/internal/morphologicalPassiveAffixes.js +3 -9
- package/build/languageProcessing/languages/hu/config/internal/morphologicalPassiveAffixes.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/internal/nonPassivesInVaAndVe.js +2 -7
- package/build/languageProcessing/languages/hu/config/internal/nonPassivesInVaAndVe.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/internal/odikVerbs.js +1 -7
- package/build/languageProcessing/languages/hu/config/internal/odikVerbs.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/internal/participles.js +2 -7
- package/build/languageProcessing/languages/hu/config/internal/participles.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/stopWords.js +2 -7
- package/build/languageProcessing/languages/hu/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/hu/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/hu/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/hu/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/hu/helpers/getClauses.js +9 -16
- package/build/languageProcessing/languages/hu/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/hu/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/hu/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/hu/helpers/internal/getParticiples.js +6 -12
- package/build/languageProcessing/languages/hu/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/hu/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/hu/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/hu/helpers/isPassiveSentence.js +9 -15
- package/build/languageProcessing/languages/hu/helpers/isPassiveSentence.js.map +1 -1
- package/build/languageProcessing/languages/hu/values/Clause.js +8 -14
- package/build/languageProcessing/languages/hu/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/id/Researcher.js +17 -25
- package/build/languageProcessing/languages/id/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/id/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/id/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/id/config/functionWords.js +8 -16
- package/build/languageProcessing/languages/id/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/id/config/internal/nonPassiveVerbsStartingDi.js +1 -7
- package/build/languageProcessing/languages/id/config/internal/nonPassiveVerbsStartingDi.js.map +1 -1
- package/build/languageProcessing/languages/id/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/id/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/id/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/id/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/id/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/id/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/id/helpers/internal/stem.js +29 -34
- package/build/languageProcessing/languages/id/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/id/helpers/internal/stemHelpers.js +5 -13
- package/build/languageProcessing/languages/id/helpers/internal/stemHelpers.js.map +1 -1
- package/build/languageProcessing/languages/id/helpers/isPassiveSentence.js +5 -12
- package/build/languageProcessing/languages/id/helpers/isPassiveSentence.js.map +1 -1
- package/build/languageProcessing/languages/id/helpers/splitIntoTokensCustom.js +3 -9
- package/build/languageProcessing/languages/id/helpers/splitIntoTokensCustom.js.map +1 -1
- package/build/languageProcessing/languages/it/Researcher.js +23 -31
- package/build/languageProcessing/languages/it/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/it/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/it/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/it/config/functionWords.js +11 -17
- package/build/languageProcessing/languages/it/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/it/config/internal/passiveVoiceAuxiliaries.js +1 -7
- package/build/languageProcessing/languages/it/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/it/config/internal/passiveVoiceParticiples.js +1 -7
- package/build/languageProcessing/languages/it/config/internal/passiveVoiceParticiples.js.map +1 -1
- package/build/languageProcessing/languages/it/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/it/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/it/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/it/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/it/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/it/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/it/config/twoPartTransitionWords.js +1 -7
- package/build/languageProcessing/languages/it/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/it/helpers/calculateFleschReadingScore.js +3 -9
- package/build/languageProcessing/languages/it/helpers/calculateFleschReadingScore.js.map +1 -1
- package/build/languageProcessing/languages/it/helpers/getClauses.js +10 -17
- package/build/languageProcessing/languages/it/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/it/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/it/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/it/helpers/internal/getParticiples.js +6 -12
- package/build/languageProcessing/languages/it/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/it/helpers/internal/stem.js +3 -9
- package/build/languageProcessing/languages/it/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/it/values/Clause.js +7 -14
- package/build/languageProcessing/languages/it/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/ja/Researcher.js +51 -59
- package/build/languageProcessing/languages/ja/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/assessmentApplicabilityCharacterCount.js +1 -7
- package/build/languageProcessing/languages/ja/config/assessmentApplicabilityCharacterCount.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/ja/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/functionWords.js +1 -7
- package/build/languageProcessing/languages/ja/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/keyphraseLength.js +1 -7
- package/build/languageProcessing/languages/ja/config/keyphraseLength.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/metaDescriptionLength.js +1 -7
- package/build/languageProcessing/languages/ja/config/metaDescriptionLength.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/paragraphLength.js +1 -7
- package/build/languageProcessing/languages/ja/config/paragraphLength.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/ja/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/subheadingsTooLong.js +1 -7
- package/build/languageProcessing/languages/ja/config/subheadingsTooLong.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/textLength.js +1 -7
- package/build/languageProcessing/languages/ja/config/textLength.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/topicLength.js +1 -7
- package/build/languageProcessing/languages/ja/config/topicLength.js.map +1 -1
- package/build/languageProcessing/languages/ja/config/transitionWords.js +2 -7
- package/build/languageProcessing/languages/ja/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/ja/customResearches/findKeyphraseInSEOTitle.js +16 -22
- package/build/languageProcessing/languages/ja/customResearches/findKeyphraseInSEOTitle.js.map +1 -1
- package/build/languageProcessing/languages/ja/customResearches/getKeyphraseLength.js +5 -11
- package/build/languageProcessing/languages/ja/customResearches/getKeyphraseLength.js.map +1 -1
- package/build/languageProcessing/languages/ja/customResearches/getWordForms.js +11 -17
- package/build/languageProcessing/languages/ja/customResearches/getWordForms.js.map +1 -1
- package/build/languageProcessing/languages/ja/customResearches/textLength.js +3 -9
- package/build/languageProcessing/languages/ja/customResearches/textLength.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/countCharacters.js +6 -12
- package/build/languageProcessing/languages/ja/helpers/countCharacters.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/customGetStemmer.js +8 -14
- package/build/languageProcessing/languages/ja/helpers/customGetStemmer.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/getContentWords.js +5 -11
- package/build/languageProcessing/languages/ja/helpers/getContentWords.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/getWords.js +8 -15
- package/build/languageProcessing/languages/ja/helpers/getWords.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/internal/SentenceTokenizer.js +6 -13
- package/build/languageProcessing/languages/ja/helpers/internal/SentenceTokenizer.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/internal/createWordForms.js +4 -9
- package/build/languageProcessing/languages/ja/helpers/internal/createWordForms.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/internal/determineStem.js +3 -9
- package/build/languageProcessing/languages/ja/helpers/internal/determineStem.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/matchTextWithWord.js +7 -13
- package/build/languageProcessing/languages/ja/helpers/matchTextWithWord.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/matchTransitionWords.js +3 -9
- package/build/languageProcessing/languages/ja/helpers/matchTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/memoizedSentenceTokenizer.js +4 -10
- package/build/languageProcessing/languages/ja/helpers/memoizedSentenceTokenizer.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/splitIntoTokensCustom.js +5 -11
- package/build/languageProcessing/languages/ja/helpers/splitIntoTokensCustom.js.map +1 -1
- package/build/languageProcessing/languages/ja/helpers/wordsCharacterCount.js +1 -7
- package/build/languageProcessing/languages/ja/helpers/wordsCharacterCount.js.map +1 -1
- package/build/languageProcessing/languages/nb/Researcher.js +17 -25
- package/build/languageProcessing/languages/nb/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/nb/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/nb/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/nb/config/functionWords.js +5 -11
- package/build/languageProcessing/languages/nb/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/nb/config/internal/participles.js +2 -7
- package/build/languageProcessing/languages/nb/config/internal/participles.js.map +1 -1
- package/build/languageProcessing/languages/nb/config/internal/passiveVoiceAuxiliaries.js +1 -7
- package/build/languageProcessing/languages/nb/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/nb/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/nb/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/nb/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/nb/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/nb/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/nb/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/nb/helpers/getClauses.js +11 -18
- package/build/languageProcessing/languages/nb/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/nb/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/nb/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/nb/helpers/internal/getParticiples.js +8 -14
- package/build/languageProcessing/languages/nb/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/nb/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/nb/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/nb/values/Clause.js +8 -14
- package/build/languageProcessing/languages/nb/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/nl/Researcher.js +23 -31
- package/build/languageProcessing/languages/nl/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/nl/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/nl/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/nl/config/functionWords.js +10 -16
- package/build/languageProcessing/languages/nl/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/nl/config/internal/nonParticiples.js +1 -7
- package/build/languageProcessing/languages/nl/config/internal/nonParticiples.js.map +1 -1
- package/build/languageProcessing/languages/nl/config/internal/passiveVoiceAuxiliaries.js +1 -7
- package/build/languageProcessing/languages/nl/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/nl/config/internal/passiveVoiceIrregulars.js +1 -7
- package/build/languageProcessing/languages/nl/config/internal/passiveVoiceIrregulars.js.map +1 -1
- package/build/languageProcessing/languages/nl/config/keyphraseLength.js +1 -7
- package/build/languageProcessing/languages/nl/config/keyphraseLength.js.map +1 -1
- package/build/languageProcessing/languages/nl/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/nl/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/nl/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/nl/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/nl/config/twoPartTransitionWords.js +1 -7
- package/build/languageProcessing/languages/nl/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/calculateFleschReadingScore.js +3 -9
- package/build/languageProcessing/languages/nl/helpers/calculateFleschReadingScore.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/getClauses.js +9 -16
- package/build/languageProcessing/languages/nl/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/nl/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/internal/checkExceptionsWithFullForms.js +7 -13
- package/build/languageProcessing/languages/nl/helpers/internal/checkExceptionsWithFullForms.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemRegularParticiple.js +8 -14
- package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemRegularParticiple.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemSuffixes.js +10 -15
- package/build/languageProcessing/languages/nl/helpers/internal/detectAndStemSuffixes.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/internal/determineStem.js +10 -16
- package/build/languageProcessing/languages/nl/helpers/internal/determineStem.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/internal/getParticiples.js +7 -13
- package/build/languageProcessing/languages/nl/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/internal/getStemWordsWithTAndDEnding.js +7 -12
- package/build/languageProcessing/languages/nl/helpers/internal/getStemWordsWithTAndDEnding.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/internal/stem.js +17 -23
- package/build/languageProcessing/languages/nl/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/internal/stemModificationHelpers.js +4 -11
- package/build/languageProcessing/languages/nl/helpers/internal/stemModificationHelpers.js.map +1 -1
- package/build/languageProcessing/languages/nl/helpers/internal/stemTOrDFromEndOfWord.js +8 -14
- package/build/languageProcessing/languages/nl/helpers/internal/stemTOrDFromEndOfWord.js.map +1 -1
- package/build/languageProcessing/languages/nl/values/Clause.js +10 -16
- package/build/languageProcessing/languages/nl/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/pl/Researcher.js +19 -27
- package/build/languageProcessing/languages/pl/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/pl/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/pl/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/pl/config/functionWords.js +9 -16
- package/build/languageProcessing/languages/pl/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/pl/config/internal/auxiliaries.js +1 -7
- package/build/languageProcessing/languages/pl/config/internal/auxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/pl/config/internal/participles.js +1 -7
- package/build/languageProcessing/languages/pl/config/internal/participles.js.map +1 -1
- package/build/languageProcessing/languages/pl/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/pl/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/pl/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/pl/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/pl/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/pl/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/pl/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/pl/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/pl/helpers/getClauses.js +9 -16
- package/build/languageProcessing/languages/pl/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/pl/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/pl/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/pl/helpers/internal/getParticiples.js +7 -13
- package/build/languageProcessing/languages/pl/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/pl/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/pl/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/pl/values/Clause.js +8 -14
- package/build/languageProcessing/languages/pl/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/pt/Researcher.js +23 -31
- package/build/languageProcessing/languages/pt/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/pt/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/pt/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/pt/config/functionWords.js +10 -16
- package/build/languageProcessing/languages/pt/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/pt/config/internal/passiveVoiceAuxiliaries.js +1 -7
- package/build/languageProcessing/languages/pt/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/pt/config/internal/passiveVoiceParticiples.js +1 -7
- package/build/languageProcessing/languages/pt/config/internal/passiveVoiceParticiples.js.map +1 -1
- package/build/languageProcessing/languages/pt/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/pt/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/pt/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/pt/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/pt/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/pt/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/pt/config/twoPartTransitionWords.js +1 -7
- package/build/languageProcessing/languages/pt/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/pt/helpers/calculateFleschReadingScore.js +3 -9
- package/build/languageProcessing/languages/pt/helpers/calculateFleschReadingScore.js.map +1 -1
- package/build/languageProcessing/languages/pt/helpers/getClauses.js +10 -17
- package/build/languageProcessing/languages/pt/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/pt/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/pt/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/pt/helpers/internal/getParticiples.js +6 -12
- package/build/languageProcessing/languages/pt/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/pt/helpers/internal/stem.js +3 -9
- package/build/languageProcessing/languages/pt/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/pt/values/Clause.js +7 -14
- package/build/languageProcessing/languages/pt/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/ru/Researcher.js +23 -31
- package/build/languageProcessing/languages/ru/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/ru/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/ru/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/ru/config/fleschReadingEaseScores.js +1 -7
- package/build/languageProcessing/languages/ru/config/fleschReadingEaseScores.js.map +1 -1
- package/build/languageProcessing/languages/ru/config/functionWords.js +8 -14
- package/build/languageProcessing/languages/ru/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/ru/config/internal/participlesShortenedList.js +2 -8
- package/build/languageProcessing/languages/ru/config/internal/participlesShortenedList.js.map +1 -1
- package/build/languageProcessing/languages/ru/config/internal/passiveVoiceParticiples.js +1 -7
- package/build/languageProcessing/languages/ru/config/internal/passiveVoiceParticiples.js.map +1 -1
- package/build/languageProcessing/languages/ru/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/ru/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/ru/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/ru/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/ru/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/ru/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/ru/helpers/calculateFleschReadingScore.js +3 -9
- package/build/languageProcessing/languages/ru/helpers/calculateFleschReadingScore.js.map +1 -1
- package/build/languageProcessing/languages/ru/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/ru/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/ru/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/ru/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/ru/helpers/isPassiveSentence.js +6 -12
- package/build/languageProcessing/languages/ru/helpers/isPassiveSentence.js.map +1 -1
- package/build/languageProcessing/languages/sk/Researcher.js +17 -25
- package/build/languageProcessing/languages/sk/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/sk/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/sk/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/sk/config/functionWords.js +5 -11
- package/build/languageProcessing/languages/sk/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/sk/config/internal/nonPassives.js +1 -7
- package/build/languageProcessing/languages/sk/config/internal/nonPassives.js.map +1 -1
- package/build/languageProcessing/languages/sk/config/internal/passiveVoiceAuxiliaries.js +2 -8
- package/build/languageProcessing/languages/sk/config/internal/passiveVoiceAuxiliaries.js.map +1 -1
- package/build/languageProcessing/languages/sk/config/stopWords.js +1 -7
- package/build/languageProcessing/languages/sk/config/stopWords.js.map +1 -1
- package/build/languageProcessing/languages/sk/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/sk/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/sk/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/sk/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/sk/helpers/getClauses.js +9 -16
- package/build/languageProcessing/languages/sk/helpers/getClauses.js.map +1 -1
- package/build/languageProcessing/languages/sk/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/sk/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/sk/helpers/internal/getParticiples.js +3 -9
- package/build/languageProcessing/languages/sk/helpers/internal/getParticiples.js.map +1 -1
- package/build/languageProcessing/languages/sk/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/sk/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/sk/values/Clause.js +8 -14
- package/build/languageProcessing/languages/sk/values/Clause.js.map +1 -1
- package/build/languageProcessing/languages/sv/Researcher.js +17 -25
- package/build/languageProcessing/languages/sv/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/sv/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/sv/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/sv/config/functionWords.js +7 -13
- package/build/languageProcessing/languages/sv/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/sv/config/internal/passiveVerbs.js +2 -7
- package/build/languageProcessing/languages/sv/config/internal/passiveVerbs.js.map +1 -1
- package/build/languageProcessing/languages/sv/config/keyphraseLength.js +1 -7
- package/build/languageProcessing/languages/sv/config/keyphraseLength.js.map +1 -1
- package/build/languageProcessing/languages/sv/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/sv/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/sv/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/sv/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/sv/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/sv/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/sv/helpers/internal/stem.js +1 -7
- package/build/languageProcessing/languages/sv/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/sv/helpers/isPassiveSentence.js +6 -12
- package/build/languageProcessing/languages/sv/helpers/isPassiveSentence.js.map +1 -1
- package/build/languageProcessing/languages/tr/Researcher.js +17 -25
- package/build/languageProcessing/languages/tr/Researcher.js.map +1 -1
- package/build/languageProcessing/languages/tr/config/firstWordExceptions.js +1 -7
- package/build/languageProcessing/languages/tr/config/firstWordExceptions.js.map +1 -1
- package/build/languageProcessing/languages/tr/config/functionWords.js +4 -10
- package/build/languageProcessing/languages/tr/config/functionWords.js.map +1 -1
- package/build/languageProcessing/languages/tr/config/internal/nonPassiveExceptions.js +3 -8
- package/build/languageProcessing/languages/tr/config/internal/nonPassiveExceptions.js.map +1 -1
- package/build/languageProcessing/languages/tr/config/internal/passiveEndings.js +1 -7
- package/build/languageProcessing/languages/tr/config/internal/passiveEndings.js.map +1 -1
- package/build/languageProcessing/languages/tr/config/sentenceLength.js +1 -7
- package/build/languageProcessing/languages/tr/config/sentenceLength.js.map +1 -1
- package/build/languageProcessing/languages/tr/config/transitionWords.js +4 -10
- package/build/languageProcessing/languages/tr/config/transitionWords.js.map +1 -1
- package/build/languageProcessing/languages/tr/config/twoPartTransitionWords.js +2 -7
- package/build/languageProcessing/languages/tr/config/twoPartTransitionWords.js.map +1 -1
- package/build/languageProcessing/languages/tr/helpers/getStemmer.js +8 -14
- package/build/languageProcessing/languages/tr/helpers/getStemmer.js.map +1 -1
- package/build/languageProcessing/languages/tr/helpers/internal/stem.js +3 -9
- package/build/languageProcessing/languages/tr/helpers/internal/stem.js.map +1 -1
- package/build/languageProcessing/languages/tr/helpers/isPassiveSentence.js +9 -15
- package/build/languageProcessing/languages/tr/helpers/isPassiveSentence.js.map +1 -1
- package/build/languageProcessing/researches/altTagCount.js +10 -16
- package/build/languageProcessing/researches/altTagCount.js.map +1 -1
- package/build/languageProcessing/researches/checkRelatedKeywords.js +72 -0
- package/build/languageProcessing/researches/checkRelatedKeywords.js.map +1 -0
- package/build/languageProcessing/researches/countSentencesFromText.js +9 -15
- package/build/languageProcessing/researches/countSentencesFromText.js.map +1 -1
- package/build/languageProcessing/researches/findKeyphraseInSEOTitle.js +19 -26
- package/build/languageProcessing/researches/findKeyphraseInSEOTitle.js.map +1 -1
- package/build/languageProcessing/researches/findKeywordInFirstParagraph.js +17 -23
- package/build/languageProcessing/researches/findKeywordInFirstParagraph.js.map +1 -1
- package/build/languageProcessing/researches/findTransitionWords.js +16 -23
- package/build/languageProcessing/researches/findTransitionWords.js.map +1 -1
- package/build/languageProcessing/researches/functionWordsInKeyphrase.js +10 -16
- package/build/languageProcessing/researches/functionWordsInKeyphrase.js.map +1 -1
- package/build/languageProcessing/researches/getAnchorsWithKeyphrase.js +21 -28
- package/build/languageProcessing/researches/getAnchorsWithKeyphrase.js.map +1 -1
- package/build/languageProcessing/researches/getFleschReadingScore.js +18 -25
- package/build/languageProcessing/researches/getFleschReadingScore.js.map +1 -1
- package/build/languageProcessing/researches/getKeywordDensity.js +7 -14
- package/build/languageProcessing/researches/getKeywordDensity.js.map +1 -1
- package/build/languageProcessing/researches/getLinkStatistics.js +7 -13
- package/build/languageProcessing/researches/getLinkStatistics.js.map +1 -1
- package/build/languageProcessing/researches/getLinks.js +7 -13
- package/build/languageProcessing/researches/getLinks.js.map +1 -1
- package/build/languageProcessing/researches/getLongCenterAlignedTexts.js +1 -7
- package/build/languageProcessing/researches/getLongCenterAlignedTexts.js.map +1 -1
- package/build/languageProcessing/researches/getParagraphLength.js +15 -21
- package/build/languageProcessing/researches/getParagraphLength.js.map +1 -1
- package/build/languageProcessing/researches/getParagraphs.js +4 -9
- package/build/languageProcessing/researches/getParagraphs.js.map +1 -1
- package/build/languageProcessing/researches/getPassiveVoiceResult.js +21 -30
- package/build/languageProcessing/researches/getPassiveVoiceResult.js.map +1 -1
- package/build/languageProcessing/researches/getProminentWordsForInsights.js +12 -18
- package/build/languageProcessing/researches/getProminentWordsForInsights.js.map +1 -1
- package/build/languageProcessing/researches/getProminentWordsForInternalLinking.js +20 -26
- package/build/languageProcessing/researches/getProminentWordsForInternalLinking.js.map +1 -1
- package/build/languageProcessing/researches/getSentenceBeginnings.js +30 -36
- package/build/languageProcessing/researches/getSentenceBeginnings.js.map +1 -1
- package/build/languageProcessing/researches/getSubheadingTextLengths.js +12 -18
- package/build/languageProcessing/researches/getSubheadingTextLengths.js.map +1 -1
- package/build/languageProcessing/researches/getWordForms.js +13 -19
- package/build/languageProcessing/researches/getWordForms.js.map +1 -1
- package/build/languageProcessing/researches/h1s.js +1 -7
- package/build/languageProcessing/researches/h1s.js.map +1 -1
- package/build/languageProcessing/researches/imageCount.js +4 -10
- package/build/languageProcessing/researches/imageCount.js.map +1 -1
- package/build/languageProcessing/researches/index.js +4 -27
- package/build/languageProcessing/researches/index.js.map +1 -1
- package/build/languageProcessing/researches/keyphraseDistribution.js +22 -32
- package/build/languageProcessing/researches/keyphraseDistribution.js.map +1 -1
- package/build/languageProcessing/researches/keyphraseLength.js +1 -7
- package/build/languageProcessing/researches/keyphraseLength.js.map +1 -1
- package/build/languageProcessing/researches/keywordCount.js +30 -39
- package/build/languageProcessing/researches/keywordCount.js.map +1 -1
- package/build/languageProcessing/researches/keywordCountInUrl.js +8 -16
- package/build/languageProcessing/researches/keywordCountInUrl.js.map +1 -1
- package/build/languageProcessing/researches/matchKeywordInSubheadings.js +15 -20
- package/build/languageProcessing/researches/matchKeywordInSubheadings.js.map +1 -1
- package/build/languageProcessing/researches/metaDescriptionKeyword.js +6 -12
- package/build/languageProcessing/researches/metaDescriptionKeyword.js.map +1 -1
- package/build/languageProcessing/researches/metaDescriptionLength.js +3 -9
- package/build/languageProcessing/researches/metaDescriptionLength.js.map +1 -1
- package/build/languageProcessing/researches/pageTitleWidth.js +1 -7
- package/build/languageProcessing/researches/pageTitleWidth.js.map +1 -1
- package/build/languageProcessing/researches/readingTime.js +7 -13
- package/build/languageProcessing/researches/readingTime.js.map +1 -1
- package/build/languageProcessing/researches/sentences.js +7 -13
- package/build/languageProcessing/researches/sentences.js.map +1 -1
- package/build/languageProcessing/researches/videoCount.js +1 -7
- package/build/languageProcessing/researches/videoCount.js.map +1 -1
- package/build/languageProcessing/researches/wordComplexity.js +15 -21
- package/build/languageProcessing/researches/wordComplexity.js.map +1 -1
- package/build/languageProcessing/researches/wordCountInText.js +10 -15
- package/build/languageProcessing/researches/wordCountInText.js.map +1 -1
- package/build/languageProcessing/values/Clause.js +1 -7
- package/build/languageProcessing/values/Clause.js.map +1 -1
- package/build/languageProcessing/values/ProminentWord.js +1 -7
- package/build/languageProcessing/values/ProminentWord.js.map +1 -1
- package/build/languageProcessing/values/Sentence.js +1 -7
- package/build/languageProcessing/values/Sentence.js.map +1 -1
- package/build/languageProcessing/values/index.js +4 -27
- package/build/languageProcessing/values/index.js.map +1 -1
- package/build/markers/addMark.js +1 -7
- package/build/markers/addMark.js.map +1 -1
- package/build/markers/addMarkSingleWord.js +7 -12
- package/build/markers/addMarkSingleWord.js.map +1 -1
- package/build/markers/index.js +3 -20
- package/build/markers/index.js.map +1 -1
- package/build/markers/removeDuplicateMarks.js +3 -8
- package/build/markers/removeDuplicateMarks.js.map +1 -1
- package/build/markers/removeMarks.js +1 -7
- package/build/markers/removeMarks.js.map +1 -1
- package/build/parse/build/build.js +17 -25
- package/build/parse/build/build.js.map +1 -1
- package/build/parse/build/index.js +7 -12
- package/build/parse/build/index.js.map +1 -1
- package/build/parse/build/private/adapt.js +15 -21
- package/build/parse/build/private/adapt.js.map +1 -1
- package/build/parse/build/private/adaptAttributes.js +3 -9
- package/build/parse/build/private/adaptAttributes.js.map +1 -1
- package/build/parse/build/private/alwaysFilterElements.js +9 -14
- package/build/parse/build/private/alwaysFilterElements.js.map +1 -1
- package/build/parse/build/private/combineIntoImplicitParagraphs.js +12 -18
- package/build/parse/build/private/combineIntoImplicitParagraphs.js.map +1 -1
- package/build/parse/build/private/filterBeforeTokenizing.js +5 -10
- package/build/parse/build/private/filterBeforeTokenizing.js.map +1 -1
- package/build/parse/build/private/filterHelpers.js +3 -11
- package/build/parse/build/private/filterHelpers.js.map +1 -1
- package/build/parse/build/private/filterTree.js +3 -8
- package/build/parse/build/private/filterTree.js.map +1 -1
- package/build/parse/build/private/getTextElementPositions.js +5 -10
- package/build/parse/build/private/getTextElementPositions.js.map +1 -1
- package/build/parse/build/private/helpers/parseClassAttribute.js +1 -7
- package/build/parse/build/private/helpers/parseClassAttribute.js.map +1 -1
- package/build/parse/build/private/isPhrasingContent.js +1 -7
- package/build/parse/build/private/isPhrasingContent.js.map +1 -1
- package/build/parse/build/private/parseBlocks.js +4 -11
- package/build/parse/build/private/parseBlocks.js.map +1 -1
- package/build/parse/build/private/tokenize.js +8 -14
- package/build/parse/build/private/tokenize.js.map +1 -1
- package/build/parse/language/LanguageProcessor.js +8 -15
- package/build/parse/language/LanguageProcessor.js.map +1 -1
- package/build/parse/structure/Heading.js +3 -9
- package/build/parse/structure/Heading.js.map +1 -1
- package/build/parse/structure/Node.js +8 -14
- package/build/parse/structure/Node.js.map +1 -1
- package/build/parse/structure/Paragraph.js +3 -9
- package/build/parse/structure/Paragraph.js.map +1 -1
- package/build/parse/structure/Sentence.js +1 -7
- package/build/parse/structure/Sentence.js.map +1 -1
- package/build/parse/structure/SourceCodeLocation.js +1 -7
- package/build/parse/structure/SourceCodeLocation.js.map +1 -1
- package/build/parse/structure/Text.js +3 -10
- package/build/parse/structure/Text.js.map +1 -1
- package/build/parse/structure/Token.js +3 -8
- package/build/parse/structure/Token.js.map +1 -1
- package/build/parse/structure/index.js +10 -33
- package/build/parse/structure/index.js.map +1 -1
- package/build/parse/traverse/findAllInTree.js +1 -7
- package/build/parse/traverse/findAllInTree.js.map +1 -1
- package/build/parse/traverse/index.js +8 -19
- package/build/parse/traverse/index.js.map +1 -1
- package/build/parse/traverse/innerText.js +3 -8
- package/build/parse/traverse/innerText.js.map +1 -1
- package/build/parsedPaper/ParsedPaper.js +1 -8
- package/build/parsedPaper/ParsedPaper.js.map +1 -1
- package/build/parsedPaper/assess/TreeAssessor.js +6 -12
- package/build/parsedPaper/assess/TreeAssessor.js.map +1 -1
- package/build/parsedPaper/assess/assessmentListFactories.js +1 -11
- package/build/parsedPaper/assess/assessmentListFactories.js.map +1 -1
- package/build/parsedPaper/assess/assessments/Assessment.js +15 -9
- package/build/parsedPaper/assess/assessments/Assessment.js.map +1 -1
- package/build/parsedPaper/assess/assessments/index.js +6 -13
- package/build/parsedPaper/assess/assessments/index.js.map +1 -1
- package/build/parsedPaper/assess/assessorFactories.js +16 -24
- package/build/parsedPaper/assess/assessorFactories.js.map +1 -1
- package/build/parsedPaper/assess/cornerstone/assessmentListFactories.js +1 -9
- package/build/parsedPaper/assess/cornerstone/assessmentListFactories.js.map +1 -1
- package/build/parsedPaper/assess/cornerstone/index.js +2 -10
- package/build/parsedPaper/assess/cornerstone/index.js.map +1 -1
- package/build/parsedPaper/assess/index.js +13 -29
- package/build/parsedPaper/assess/index.js.map +1 -1
- package/build/parsedPaper/build/PaperParser.js +5 -11
- package/build/parsedPaper/build/PaperParser.js.map +1 -1
- package/build/parsedPaper/build/linguisticParsing/Sentence.js +1 -7
- package/build/parsedPaper/build/linguisticParsing/Sentence.js.map +1 -1
- package/build/parsedPaper/build/linguisticParsing/SentenceTokenizer.js +16 -23
- package/build/parsedPaper/build/linguisticParsing/SentenceTokenizer.js.map +1 -1
- package/build/parsedPaper/build/linguisticParsing/parseText.js +3 -9
- package/build/parsedPaper/build/linguisticParsing/parseText.js.map +1 -1
- package/build/parsedPaper/build/tree/TreeBuilder.js +3 -9
- package/build/parsedPaper/build/tree/TreeBuilder.js.map +1 -1
- package/build/parsedPaper/build/tree/cleanup/calculateTextIndices.js +5 -10
- package/build/parsedPaper/build/tree/cleanup/calculateTextIndices.js.map +1 -1
- package/build/parsedPaper/build/tree/cleanup/getElementContent.js +1 -7
- package/build/parsedPaper/build/tree/cleanup/getElementContent.js.map +1 -1
- package/build/parsedPaper/build/tree/cleanup/postParsing.js +5 -11
- package/build/parsedPaper/build/tree/cleanup/postParsing.js.map +1 -1
- package/build/parsedPaper/build/tree/html/HTMLTreeConverter.js +21 -27
- package/build/parsedPaper/build/tree/html/HTMLTreeConverter.js.map +1 -1
- package/build/parsedPaper/build/tree/html/buildTree.js +7 -13
- package/build/parsedPaper/build/tree/html/buildTree.js.map +1 -1
- package/build/parsedPaper/build/tree/html/htmlConstants.js +4 -9
- package/build/parsedPaper/build/tree/html/htmlConstants.js.map +1 -1
- package/build/parsedPaper/build/tree/index.js +3 -8
- package/build/parsedPaper/build/tree/index.js.map +1 -1
- package/build/parsedPaper/build/tree/metadata/buildTree.js +12 -18
- package/build/parsedPaper/build/tree/metadata/buildTree.js.map +1 -1
- package/build/parsedPaper/research/TreeResearcher.js +4 -9
- package/build/parsedPaper/research/TreeResearcher.js.map +1 -1
- package/build/parsedPaper/research/index.js +10 -12
- package/build/parsedPaper/research/index.js.map +1 -1
- package/build/parsedPaper/research/researches/Headings.js +5 -11
- package/build/parsedPaper/research/researches/Headings.js.map +1 -1
- package/build/parsedPaper/research/researches/LinkStatistics.js +6 -12
- package/build/parsedPaper/research/researches/LinkStatistics.js.map +1 -1
- package/build/parsedPaper/research/researches/Research.js +5 -10
- package/build/parsedPaper/research/researches/Research.js.map +1 -1
- package/build/parsedPaper/research/researches/index.js +1 -13
- package/build/parsedPaper/research/researches/index.js.map +1 -1
- package/build/parsedPaper/structure/tree/FormattingElement.js +3 -9
- package/build/parsedPaper/structure/tree/FormattingElement.js.map +1 -1
- package/build/parsedPaper/structure/tree/SourceCodeLocation.js +1 -7
- package/build/parsedPaper/structure/tree/SourceCodeLocation.js.map +1 -1
- package/build/parsedPaper/structure/tree/TextContainer.js +5 -10
- package/build/parsedPaper/structure/tree/TextContainer.js.map +1 -1
- package/build/parsedPaper/structure/tree/index.js +9 -74
- package/build/parsedPaper/structure/tree/index.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/Heading.js +3 -9
- package/build/parsedPaper/structure/tree/nodes/Heading.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/LeafNode.js +5 -12
- package/build/parsedPaper/structure/tree/nodes/LeafNode.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/List.js +5 -11
- package/build/parsedPaper/structure/tree/nodes/List.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/ListItem.js +3 -10
- package/build/parsedPaper/structure/tree/nodes/ListItem.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/MetadataMiscellaneous.js +3 -9
- package/build/parsedPaper/structure/tree/nodes/MetadataMiscellaneous.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/MetadataText.js +3 -9
- package/build/parsedPaper/structure/tree/nodes/MetadataText.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/Node.js +6 -12
- package/build/parsedPaper/structure/tree/nodes/Node.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/Paragraph.js +3 -9
- package/build/parsedPaper/structure/tree/nodes/Paragraph.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/StructuredNode.js +3 -10
- package/build/parsedPaper/structure/tree/nodes/StructuredNode.js.map +1 -1
- package/build/parsedPaper/structure/tree/nodes/index.js +10 -69
- package/build/parsedPaper/structure/tree/nodes/index.js.map +1 -1
- package/build/scoring/assessments/assessment.js +17 -15
- package/build/scoring/assessments/assessment.js.map +1 -1
- package/build/scoring/assessments/index.js +53 -56
- package/build/scoring/assessments/index.js.map +1 -1
- package/build/scoring/assessments/readability/ParagraphTooLongAssessment.js +30 -47
- package/build/scoring/assessments/readability/ParagraphTooLongAssessment.js.map +1 -1
- package/build/scoring/assessments/readability/RelatedKeywordsAssessment.js +98 -0
- package/build/scoring/assessments/readability/RelatedKeywordsAssessment.js.map +1 -0
- package/build/scoring/assessments/readability/SentenceBeginningsAssessment.js +22 -35
- package/build/scoring/assessments/readability/SentenceBeginningsAssessment.js.map +1 -1
- package/build/scoring/assessments/readability/SentenceLengthInTextAssessment.js +24 -39
- package/build/scoring/assessments/readability/SentenceLengthInTextAssessment.js.map +1 -1
- package/build/scoring/assessments/readability/TransitionWordsAssessment.js +29 -47
- package/build/scoring/assessments/readability/TransitionWordsAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/FAQsAssessment.js +162 -0
- package/build/scoring/assessments/seo/FAQsAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/ImageCountAssessment.js +17 -33
- package/build/scoring/assessments/seo/ImageCountAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/InternalLinksAssessment.js +21 -35
- package/build/scoring/assessments/seo/InternalLinksAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/IntroductionKeywordAssessment.js +20 -34
- package/build/scoring/assessments/seo/IntroductionKeywordAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/KeyphraseAssessment.js +18 -32
- package/build/scoring/assessments/seo/KeyphraseAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/KeyphraseLengthAssessment.js +21 -34
- package/build/scoring/assessments/seo/KeyphraseLengthAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/KeywordDensityAssessment.js +26 -40
- package/build/scoring/assessments/seo/KeywordDensityAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/MetaDescriptionKeywordAssessment.js +23 -42
- package/build/scoring/assessments/seo/MetaDescriptionKeywordAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/MetaDescriptionLengthAssessment.js +19 -34
- package/build/scoring/assessments/seo/MetaDescriptionLengthAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/MetaTitleKeywordAssessment.js +25 -41
- package/build/scoring/assessments/seo/MetaTitleKeywordAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/NumberInMetaTitleAssessment.js +16 -30
- package/build/scoring/assessments/seo/NumberInMetaTitleAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/OutboundLinksAssessment.js +21 -40
- package/build/scoring/assessments/seo/OutboundLinksAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/PageTitleWidthAssessment.js +17 -31
- package/build/scoring/assessments/seo/PageTitleWidthAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/SchemaAssessment.js +95 -0
- package/build/scoring/assessments/seo/SchemaAssessment.js.map +1 -0
- package/build/scoring/assessments/seo/SingleH1Assessment.js +20 -33
- package/build/scoring/assessments/seo/SingleH1Assessment.js.map +1 -1
- package/build/scoring/assessments/seo/SingleTitleAssessment.js +20 -33
- package/build/scoring/assessments/seo/SingleTitleAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/SubHeadingsKeywordAssessment.js +18 -35
- package/build/scoring/assessments/seo/SubHeadingsKeywordAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/TextImagesAssessment.js +20 -36
- package/build/scoring/assessments/seo/TextImagesAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/TextLengthAssessment.js +21 -37
- package/build/scoring/assessments/seo/TextLengthAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/UrlKeywordAssessment.js +20 -36
- package/build/scoring/assessments/seo/UrlKeywordAssessment.js.map +1 -1
- package/build/scoring/assessments/seo/UrlLengthAssessment.js +19 -33
- package/build/scoring/assessments/seo/UrlLengthAssessment.js.map +1 -1
- package/build/scoring/assessors/assessor.js +53 -33
- package/build/scoring/assessors/assessor.js.map +1 -1
- package/build/scoring/assessors/avadaAssessor.js +37 -17
- package/build/scoring/assessors/avadaAssessor.js.map +1 -1
- package/build/scoring/assessors/contentAssessor.js +16 -22
- package/build/scoring/assessors/contentAssessor.js.map +1 -1
- package/build/scoring/assessors/index.js +4 -34
- package/build/scoring/assessors/index.js.map +1 -1
- package/build/scoring/assessors/seoAssessor.js +27 -32
- package/build/scoring/assessors/seoAssessor.js.map +1 -1
- package/build/scoring/helpers/assessments/checkForTooLongSentences.js +3 -8
- package/build/scoring/helpers/assessments/checkForTooLongSentences.js.map +1 -1
- package/build/scoring/helpers/assessments/inRange.js +2 -10
- package/build/scoring/helpers/assessments/inRange.js.map +1 -1
- package/build/scoring/helpers/assessments/keyphraseLengthFactor.js +1 -7
- package/build/scoring/helpers/assessments/keyphraseLengthFactor.js.map +1 -1
- package/build/scoring/helpers/assessments/recommendedKeywordCount.js +5 -11
- package/build/scoring/helpers/assessments/recommendedKeywordCount.js.map +1 -1
- package/build/scoring/helpers/index.js +27 -18
- package/build/scoring/helpers/index.js.map +1 -1
- package/build/scoring/interpreters/index.js +2 -13
- package/build/scoring/interpreters/index.js.map +1 -1
- package/build/scoring/interpreters/scoreToRating.js +1 -7
- package/build/scoring/interpreters/scoreToRating.js.map +1 -1
- package/build/scoring/renderers/AssessorPresenter.js +12 -18
- package/build/scoring/renderers/AssessorPresenter.js.map +1 -1
- package/build/scoring/scoreAggregators/ReadabilityScoreAggregator.js +8 -14
- package/build/scoring/scoreAggregators/ReadabilityScoreAggregator.js.map +1 -1
- package/build/scoring/scoreAggregators/SEOScoreAggregator.js +3 -9
- package/build/scoring/scoreAggregators/SEOScoreAggregator.js.map +1 -1
- package/build/scoring/scoreAggregators/ScoreAggregator.js +1 -7
- package/build/scoring/scoreAggregators/ScoreAggregator.js.map +1 -1
- package/build/scoring/scoreAggregators/index.js +3 -27
- package/build/scoring/scoreAggregators/index.js.map +1 -1
- package/build/values/AssessmentResult.js +31 -57
- package/build/values/AssessmentResult.js.map +1 -1
- package/build/values/Mark.js +9 -15
- package/build/values/Mark.js.map +1 -1
- package/build/values/Paper.js +115 -16
- package/build/values/Paper.js.map +1 -1
- package/build/values/index.js +4 -27
- package/build/values/index.js.map +1 -1
- package/build/vendor/turkishStemmer.js +1 -7
- package/build/vendor/turkishStemmer.js.map +1 -1
- package/package.json +10 -2
- package/build/bundledPlugins/index.js +0 -14
- package/build/bundledPlugins/index.js.map +0 -1
- package/build/bundledPlugins/previouslyUsedKeywords.js +0 -171
- package/build/bundledPlugins/previouslyUsedKeywords.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["
|
|
1
|
+
{"version":3,"file":"index.js","names":["TreeAssessor","ScoreAggregators","Assessments","assessorFactories","cornerstoneAssessmentListFactories"],"sources":["../../../src/parsedPaper/assess/index.js"],"sourcesContent":["import TreeAssessor from \"./TreeAssessor\";\nimport * as ScoreAggregators from \"../../scoring/scoreAggregators\";\nimport * as Assessments from \"./assessments\";\nimport * as assessorFactories from \"./assessorFactories\";\nimport { cornerstoneAssessmentListFactories } from \"./cornerstone\";\n\n/**\n * Contains the logic to assess a tree representation of a text.\n *\n * @module tree/assess\n *\n * @see module:parsedPaper/structure\n */\nexport {\n\tTreeAssessor,\n\tScoreAggregators,\n\tAssessments,\n\tassessorFactories,\n\tcornerstoneAssessmentListFactories,\n};\n"],"mappings":"AAAA,OAAOA,YAAY;AACnB,OAAO,KAAKC,gBAAgB;AAC5B,OAAO,KAAKC,WAAW;AACvB,OAAO,KAAKC,iBAAiB;AAC7B,SAASC,kCAAkC;;AAE3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SACCJ,YAAY,EACZC,gBAAgB,EAChBC,WAAW,EACXC,iBAAiB,EACjBC,kCAAkC","ignoreList":[]}
|
|
@@ -1,12 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
import ParsedPaper from "../ParsedPaper";
|
|
2
|
+
import { forEach } from "lodash";
|
|
2
3
|
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _ParsedPaper = _interopRequireDefault(require("../ParsedPaper"));
|
|
8
|
-
var _lodash = require("lodash");
|
|
9
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
4
|
/**
|
|
11
5
|
* A class responsible for pre-processing the Paper, returning a ParsedPaper.
|
|
12
6
|
*
|
|
@@ -24,7 +18,7 @@ class PaperParser {
|
|
|
24
18
|
* @constructor
|
|
25
19
|
*/
|
|
26
20
|
constructor(treeBuilder) {
|
|
27
|
-
this._parsedPaper = new
|
|
21
|
+
this._parsedPaper = new ParsedPaper();
|
|
28
22
|
this._treeBuilder = treeBuilder;
|
|
29
23
|
this._metaDataModifiers = {};
|
|
30
24
|
}
|
|
@@ -88,7 +82,7 @@ class PaperParser {
|
|
|
88
82
|
*/
|
|
89
83
|
runMetaDataModifiers(metaData, paper) {
|
|
90
84
|
let modifiedMetaData = metaData;
|
|
91
|
-
|
|
85
|
+
forEach(this._metaDataModifiers, (modifierFunction, modifierName) => {
|
|
92
86
|
try {
|
|
93
87
|
const previousMetaData = Object.assign({}, modifiedMetaData);
|
|
94
88
|
modifiedMetaData = modifierFunction(previousMetaData, paper);
|
|
@@ -99,5 +93,5 @@ class PaperParser {
|
|
|
99
93
|
return modifiedMetaData;
|
|
100
94
|
}
|
|
101
95
|
}
|
|
102
|
-
|
|
96
|
+
export default PaperParser;
|
|
103
97
|
//# sourceMappingURL=PaperParser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaperParser.js","names":["
|
|
1
|
+
{"version":3,"file":"PaperParser.js","names":["ParsedPaper","forEach","PaperParser","constructor","treeBuilder","_parsedPaper","_treeBuilder","_metaDataModifiers","parse","paper","setTree","getText","setMetaData","constructMetaData","metaData","Object","assign","runMetaDataModifiers","registerMetaDataModifier","modifierName","modifierFunction","modifiedMetaData","previousMetaData","modifierError","console","warn","message"],"sources":["../../../src/parsedPaper/build/PaperParser.js"],"sourcesContent":["import ParsedPaper from \"../ParsedPaper\";\nimport { forEach } from \"lodash\";\n\n/**\n * A class responsible for pre-processing the Paper, returning a ParsedPaper.\n *\n * @module parsedPaper\n *\n * @see module:parsedPaper/builder\n * @see module:parsedPaper/structure\n */\nclass PaperParser {\n\t/**\n\t * Constructs a PaperParser class.\n\t *\n\t * @param {Function} treeBuilder A function that receives text and returns a tree.\n\t *\n\t * @constructor\n\t */\n\tconstructor( treeBuilder ) {\n\t\tthis._parsedPaper = new ParsedPaper();\n\t\tthis._treeBuilder = treeBuilder;\n\n\t\tthis._metaDataModifiers = {};\n\t}\n\n\t/**\n\t * Processes a Paper resulting in a ParsedPaper.\n\t *\n\t * @param {Paper} paper The Paper to parse.\n\t *\n\t * @returns {ParsedPaper} A parsedPaper instance.\n\t */\n\tparse( paper ) {\n\t\t// Build tree and set it to the ParsedPaper.\n\t\tthis._parsedPaper.setTree(\n\t\t\tthis._treeBuilder( paper.getText() )\n\t\t);\n\n\t\t// Build metaData and set it to the ParsedPaper.\n\t\tthis._parsedPaper.setMetaData(\n\t\t\tthis.constructMetaData( paper )\n\t\t);\n\n\t\treturn this._parsedPaper;\n\t}\n\n\t/**\n\t * Constructs the metaData from the Paper.\n\t *\n\t * @param {Paper} paper The paper to construct the metaData from.\n\t *\n\t * @returns {Object} The metaData.\n\t */\n\tconstructMetaData( paper ) {\n\t\tlet metaData = {};\n\n\t\t// Map things to metaData.\n\n\t\t// Run additional modifiers;\n\t\tmetaData = Object.assign( {}, this.runMetaDataModifiers( metaData, paper ) );\n\n\t\treturn metaData;\n\t}\n\n\t/**\n\t * Sets a metaData modifying function behind a function name on the internal metaDataModifiers object.\n\t *\n\t * @param {string} modifierName The name of the to be registered function.\n\t * @param {Function} modifierFunction The function that modifies the metaData. Should accept a metaData object\n\t * \t\t\t\t\t\t\t\t\t and optionally the paper.\n\t * @returns {void}\n\t */\n\tregisterMetaDataModifier( modifierName, modifierFunction ) {\n\t\t/*\n\t\t * The metaDataModifier should accept the metaData and return the altered metaData.\n\t\t */\n\t\tthis._metaDataModifiers[ modifierName ] = modifierFunction;\n\t}\n\n\t/**\n\t * Runs all registered metaDataModifiers.\n\t * If one of the functions errors, it is skipped and its metaData changes are discarded.\n\t *\n\t * @param {Object} metaData The initial state of the metaData, that should be modified.\n\t * @param {Paper} paper The paper.\n\t *\n\t * @returns {Object} A modified metaData object.\n\t */\n\trunMetaDataModifiers( metaData, paper ) {\n\t\tlet modifiedMetaData = metaData;\n\t\tforEach( this._metaDataModifiers, ( modifierFunction, modifierName ) => {\n\t\t\ttry {\n\t\t\t\tconst previousMetaData = Object.assign( {}, modifiedMetaData );\n\t\t\t\tmodifiedMetaData = modifierFunction( previousMetaData, paper );\n\t\t\t} catch ( modifierError ) {\n\t\t\t\tconsole.warn( `An error with message \"${ modifierError.message}\" occurred in metaData modifier ` +\n\t\t\t\t`function called ${ modifierName }. Skipping that function...` );\n\t\t\t}\n\t\t} );\n\t\treturn modifiedMetaData;\n\t}\n}\n\nexport default PaperParser;\n"],"mappings":"AAAA,OAAOA,WAAW;AAClB,SAASC,OAAO,QAAQ,QAAQ;;AAEhC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,WAAW,CAAC;EACjB;AACD;AACA;AACA;AACA;AACA;AACA;EACCC,WAAWA,CAAEC,WAAW,EAAG;IAC1B,IAAI,CAACC,YAAY,GAAG,IAAIL,WAAW,CAAC,CAAC;IACrC,IAAI,CAACM,YAAY,GAAGF,WAAW;IAE/B,IAAI,CAACG,kBAAkB,GAAG,CAAC,CAAC;EAC7B;;EAEA;AACD;AACA;AACA;AACA;AACA;AACA;EACCC,KAAKA,CAAEC,KAAK,EAAG;IACd;IACA,IAAI,CAACJ,YAAY,CAACK,OAAO,CACxB,IAAI,CAACJ,YAAY,CAAEG,KAAK,CAACE,OAAO,CAAC,CAAE,CACpC,CAAC;;IAED;IACA,IAAI,CAACN,YAAY,CAACO,WAAW,CAC5B,IAAI,CAACC,iBAAiB,CAAEJ,KAAM,CAC/B,CAAC;IAED,OAAO,IAAI,CAACJ,YAAY;EACzB;;EAEA;AACD;AACA;AACA;AACA;AACA;AACA;EACCQ,iBAAiBA,CAAEJ,KAAK,EAAG;IAC1B,IAAIK,QAAQ,GAAG,CAAC,CAAC;;IAEjB;;IAEA;IACAA,QAAQ,GAAGC,MAAM,CAACC,MAAM,CAAE,CAAC,CAAC,EAAE,IAAI,CAACC,oBAAoB,CAAEH,QAAQ,EAAEL,KAAM,CAAE,CAAC;IAE5E,OAAOK,QAAQ;EAChB;;EAEA;AACD;AACA;AACA;AACA;AACA;AACA;AACA;EACCI,wBAAwBA,CAAEC,YAAY,EAAEC,gBAAgB,EAAG;IAC1D;AACF;AACA;IACE,IAAI,CAACb,kBAAkB,CAAEY,YAAY,CAAE,GAAGC,gBAAgB;EAC3D;;EAEA;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACCH,oBAAoBA,CAAEH,QAAQ,EAAEL,KAAK,EAAG;IACvC,IAAIY,gBAAgB,GAAGP,QAAQ;IAC/Bb,OAAO,CAAE,IAAI,CAACM,kBAAkB,EAAE,CAAEa,gBAAgB,EAAED,YAAY,KAAM;MACvE,IAAI;QACH,MAAMG,gBAAgB,GAAGP,MAAM,CAACC,MAAM,CAAE,CAAC,CAAC,EAAEK,gBAAiB,CAAC;QAC9DA,gBAAgB,GAAGD,gBAAgB,CAAEE,gBAAgB,EAAEb,KAAM,CAAC;MAC/D,CAAC,CAAC,OAAQc,aAAa,EAAG;QACzBC,OAAO,CAACC,IAAI,CAAE,0BAA2BF,aAAa,CAACG,OAAO,kCAAkC,GAChG,mBAAoBP,YAAY,6BAA+B,CAAC;MACjE;IACD,CAAE,CAAC;IACH,OAAOE,gBAAgB;EACxB;AACD;AAEA,eAAenB,WAAW","ignoreList":[]}
|
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
1
|
/**
|
|
8
2
|
* Represents a sentence in a text.
|
|
9
3
|
*/
|
|
@@ -91,5 +85,5 @@ class Sentence {
|
|
|
91
85
|
return this.endIndex;
|
|
92
86
|
}
|
|
93
87
|
}
|
|
94
|
-
|
|
88
|
+
export default Sentence;
|
|
95
89
|
//# sourceMappingURL=Sentence.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sentence.js","names":["Sentence","constructor","text","startIndex","endIndex","words","setText","appendText","getText","setStartIndex","setEndIndex","getStartIndex","getEndIndex"
|
|
1
|
+
{"version":3,"file":"Sentence.js","names":["Sentence","constructor","text","startIndex","endIndex","words","setText","appendText","getText","setStartIndex","setEndIndex","getStartIndex","getEndIndex"],"sources":["../../../../src/parsedPaper/build/linguisticParsing/Sentence.js"],"sourcesContent":["/**\n * Represents a sentence in a text.\n */\nclass Sentence {\n\t/**\n\t * Represents a sentence within a text.\n\t *\n\t * @param {string} text The text of this sentence.\n\t * @param {number} startIndex The start index of this sentence.\n\t * @param {number} endIndex The end index of this sentence.\n\t */\n\tconstructor( text, startIndex = 0, endIndex = 0 ) {\n\t\tthis.text = text;\n\t\tthis.words = [];\n\t\tthis.startIndex = startIndex;\n\t\tthis.endIndex = endIndex;\n\t}\n\n\t/**\n\t * Sets a text for this sentence.\n\t *\n\t * @param {string} text The text to be set for the sentence.\n\t *\n\t * @returns {void}\n\t */\n\tsetText( text ) {\n\t\tthis.text = text;\n\t}\n\n\t/**\n\t * Appends text to this sentence.\n\t *\n\t * @param {string} text The text to be added to the sentence.\n\t *\n\t * @returns {void}\n\t */\n\tappendText( text ) {\n\t\tthis.text += text;\n\t}\n\n\t/**\n\t * Returns the text of this sentence.\n\t *\n\t * @returns {string} The text of this senence.\n\t */\n\tgetText() {\n\t\treturn this.text;\n\t}\n\n\t/**\n\t * Sets the start index of this sentence.\n\t *\n\t * @param {number} startIndex The start index of this sentence.\n\t * @returns {void}\n\t */\n\tsetStartIndex( startIndex ) {\n\t\tthis.startIndex = startIndex;\n\t}\n\n\t/**\n\t * Sets the end index of this sentence.\n\t *\n\t * @param {number} endIndex The end index of this sentence.\n\t * @returns {void}\n\t */\n\tsetEndIndex( endIndex ) {\n\t\tthis.endIndex = endIndex;\n\t}\n\n\t/**\n\t * Returns the start index of this sentence.\n\t *\n\t * @returns {number} The start index of this sentence.\n\t */\n\tgetStartIndex() {\n\t\treturn this.startIndex;\n\t}\n\n\t/**\n\t * Returns the end index of this sentence.\n\t *\n\t * @returns {number} The end index of this sentence.\n\t */\n\tgetEndIndex() {\n\t\treturn this.endIndex;\n\t}\n}\n\nexport default Sentence;\n"],"mappings":"AAAA;AACA;AACA;AACA,MAAMA,QAAQ,CAAC;EACd;AACD;AACA;AACA;AACA;AACA;AACA;EACCC,WAAWA,CAAEC,IAAI,EAAEC,UAAU,GAAG,CAAC,EAAEC,QAAQ,GAAG,CAAC,EAAG;IACjD,IAAI,CAACF,IAAI,GAAGA,IAAI;IAChB,IAAI,CAACG,KAAK,GAAG,EAAE;IACf,IAAI,CAACF,UAAU,GAAGA,UAAU;IAC5B,IAAI,CAACC,QAAQ,GAAGA,QAAQ;EACzB;;EAEA;AACD;AACA;AACA;AACA;AACA;AACA;EACCE,OAAOA,CAAEJ,IAAI,EAAG;IACf,IAAI,CAACA,IAAI,GAAGA,IAAI;EACjB;;EAEA;AACD;AACA;AACA;AACA;AACA;AACA;EACCK,UAAUA,CAAEL,IAAI,EAAG;IAClB,IAAI,CAACA,IAAI,IAAIA,IAAI;EAClB;;EAEA;AACD;AACA;AACA;AACA;EACCM,OAAOA,CAAA,EAAG;IACT,OAAO,IAAI,CAACN,IAAI;EACjB;;EAEA;AACD;AACA;AACA;AACA;AACA;EACCO,aAAaA,CAAEN,UAAU,EAAG;IAC3B,IAAI,CAACA,UAAU,GAAGA,UAAU;EAC7B;;EAEA;AACD;AACA;AACA;AACA;AACA;EACCO,WAAWA,CAAEN,QAAQ,EAAG;IACvB,IAAI,CAACA,QAAQ,GAAGA,QAAQ;EACzB;;EAEA;AACD;AACA;AACA;AACA;EACCO,aAAaA,CAAA,EAAG;IACf,OAAO,IAAI,CAACR,UAAU;EACvB;;EAEA;AACD;AACA;AACA;AACA;EACCS,WAAWA,CAAA,EAAG;IACb,OAAO,IAAI,CAACR,QAAQ;EACrB;AACD;AAEA,eAAeJ,QAAQ","ignoreList":[]}
|
|
@@ -1,14 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
import { isNaN, isUndefined } from "lodash";
|
|
2
|
+
import core from "tokenizer2/core";
|
|
3
|
+
import { normalize as normalizeQuotes } from "../../../languageProcessing/helpers/sanitize/quotes";
|
|
4
|
+
import Sentence from "./Sentence";
|
|
2
5
|
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _lodash = require("lodash");
|
|
8
|
-
var _core = _interopRequireDefault(require("tokenizer2/core"));
|
|
9
|
-
var _quotes = require("../../../languageProcessing/helpers/sanitize/quotes");
|
|
10
|
-
var _Sentence = _interopRequireDefault(require("./Sentence"));
|
|
11
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
6
|
// All characters that indicate a sentence delimiter.
|
|
13
7
|
const fullStop = ".";
|
|
14
8
|
// The \u2026 character is an ellipsis
|
|
@@ -24,7 +18,7 @@ const whiteSpaceEndRegex = /\s*$/;
|
|
|
24
18
|
/**
|
|
25
19
|
* Class for tokenizing a (html) text into sentences.
|
|
26
20
|
*/
|
|
27
|
-
class SentenceTokenizer {
|
|
21
|
+
export default class SentenceTokenizer {
|
|
28
22
|
/**
|
|
29
23
|
* Returns whether or not a certain character is a number.
|
|
30
24
|
*
|
|
@@ -32,7 +26,7 @@ class SentenceTokenizer {
|
|
|
32
26
|
* @returns {boolean} Whether or not the character is a capital letter.
|
|
33
27
|
*/
|
|
34
28
|
isNumber(character) {
|
|
35
|
-
return !
|
|
29
|
+
return !isNaN(parseInt(character, 10));
|
|
36
30
|
}
|
|
37
31
|
|
|
38
32
|
/**
|
|
@@ -43,7 +37,7 @@ class SentenceTokenizer {
|
|
|
43
37
|
* @returns {boolean} Whether or not the given character is a quotation mark.
|
|
44
38
|
*/
|
|
45
39
|
isQuotation(character) {
|
|
46
|
-
character = (
|
|
40
|
+
character = normalizeQuotes(character);
|
|
47
41
|
return "'" === character || "\"" === character;
|
|
48
42
|
}
|
|
49
43
|
|
|
@@ -89,10 +83,10 @@ class SentenceTokenizer {
|
|
|
89
83
|
*/
|
|
90
84
|
getNextTwoCharacters(nextTokens) {
|
|
91
85
|
let next = "";
|
|
92
|
-
if (!
|
|
86
|
+
if (!isUndefined(nextTokens[0])) {
|
|
93
87
|
next += nextTokens[0].src;
|
|
94
88
|
}
|
|
95
|
-
if (!
|
|
89
|
+
if (!isUndefined(nextTokens[1])) {
|
|
96
90
|
next += nextTokens[1].src;
|
|
97
91
|
}
|
|
98
92
|
next = this.removeDuplicateWhitespace(next);
|
|
@@ -118,7 +112,7 @@ class SentenceTokenizer {
|
|
|
118
112
|
* @returns {boolean} Returns true if the token is valid ending, false if it is not.
|
|
119
113
|
*/
|
|
120
114
|
isSentenceStart(token) {
|
|
121
|
-
return !
|
|
115
|
+
return !isUndefined(token) && ("html-start" === token.type || "html-end" === token.type || "block-start" === token.type);
|
|
122
116
|
}
|
|
123
117
|
|
|
124
118
|
/**
|
|
@@ -128,7 +122,7 @@ class SentenceTokenizer {
|
|
|
128
122
|
*/
|
|
129
123
|
createTokenizer() {
|
|
130
124
|
const tokens = [];
|
|
131
|
-
const tokenizer = (
|
|
125
|
+
const tokenizer = core(function (token) {
|
|
132
126
|
tokens.push(token);
|
|
133
127
|
});
|
|
134
128
|
tokenizer.addRule(fullStopRegex, "full-stop");
|
|
@@ -227,7 +221,7 @@ class SentenceTokenizer {
|
|
|
227
221
|
*/
|
|
228
222
|
getSentencesFromTokens(tokenArray) {
|
|
229
223
|
const tokenSentences = [];
|
|
230
|
-
let currentSentence = new
|
|
224
|
+
let currentSentence = new Sentence("", 0, 0),
|
|
231
225
|
nextSentenceStart;
|
|
232
226
|
tokenArray.forEach((token, i) => {
|
|
233
227
|
let hasNextSentence, nextCharacters;
|
|
@@ -239,9 +233,9 @@ class SentenceTokenizer {
|
|
|
239
233
|
break;
|
|
240
234
|
case "sentence-delimiter":
|
|
241
235
|
currentSentence.appendText(token.src);
|
|
242
|
-
if (!
|
|
236
|
+
if (!isUndefined(nextToken) && "block-end" !== nextToken.type && "sentence-delimiter" !== nextToken.type) {
|
|
243
237
|
tokenSentences.push(currentSentence);
|
|
244
|
-
currentSentence = new
|
|
238
|
+
currentSentence = new Sentence("");
|
|
245
239
|
}
|
|
246
240
|
break;
|
|
247
241
|
case "full-stop":
|
|
@@ -258,7 +252,7 @@ class SentenceTokenizer {
|
|
|
258
252
|
// Only split on sentence delimiters when the next sentence looks like the start of a sentence.
|
|
259
253
|
if (hasNextSentence && this.isValidSentenceBeginning(nextSentenceStart) || this.isSentenceStart(nextToken)) {
|
|
260
254
|
tokenSentences.push(currentSentence);
|
|
261
|
-
currentSentence = new
|
|
255
|
+
currentSentence = new Sentence("");
|
|
262
256
|
}
|
|
263
257
|
break;
|
|
264
258
|
case "block-start":
|
|
@@ -277,7 +271,7 @@ class SentenceTokenizer {
|
|
|
277
271
|
}
|
|
278
272
|
if (hasNextSentence && this.isValidSentenceBeginning(nextSentenceStart) || this.isSentenceStart(nextToken)) {
|
|
279
273
|
tokenSentences.push(currentSentence);
|
|
280
|
-
currentSentence = new
|
|
274
|
+
currentSentence = new Sentence("");
|
|
281
275
|
}
|
|
282
276
|
break;
|
|
283
277
|
}
|
|
@@ -290,5 +284,4 @@ class SentenceTokenizer {
|
|
|
290
284
|
return tokenSentences;
|
|
291
285
|
}
|
|
292
286
|
}
|
|
293
|
-
exports.default = SentenceTokenizer;
|
|
294
287
|
//# sourceMappingURL=SentenceTokenizer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SentenceTokenizer.js","names":["_lodash","require","_core","_interopRequireDefault","_quotes","_Sentence","e","__esModule","default","fullStop","sentenceDelimiters","fullStopRegex","RegExp","sentenceDelimiterRegex","sentenceRegex","blockStartRegex","blockEndRegex","whiteSpaceStartRegex","whiteSpaceEndRegex","SentenceTokenizer","isNumber","character","isNaN","parseInt","isQuotation","normalizeQuotes","isPunctuation","removeDuplicateWhitespace","text","replace","isCapitalLetter","toLocaleLowerCase","getNextTwoCharacters","nextTokens","next","isUndefined","src","isValidSentenceBeginning","sentenceBeginning","isSentenceStart","token","type","createTokenizer","tokens","tokenizer","core","push","addRule","tokenize","onText","end","console","error","tokenizer2","determineIndices","sentences","currentIndex","sentence","startIndex","setStartIndex","endIndex","length","setEndIndex","trimWhiteSpaceAtStart","whiteSpaceLength","match","setText","getText","slice","getStartIndex","trimWhiteSpaceAtEnd","getEndIndex","trimWhiteSpaces","getSentencesFromTokens","tokenArray","tokenSentences","currentSentence","Sentence","nextSentenceStart","forEach","i","hasNextSentence","nextCharacters","nextToken","secondToNextToken","appendText","exports"],"sources":["../../../../src/parsedPaper/build/linguisticParsing/SentenceTokenizer.js"],"sourcesContent":["import { isNaN, isUndefined } from \"lodash\";\n\nimport core from \"tokenizer2/core\";\nimport { normalize as normalizeQuotes } from \"../../../languageProcessing/helpers/sanitize/quotes\";\n\nimport Sentence from \"./Sentence\";\n\n// All characters that indicate a sentence delimiter.\nconst fullStop = \".\";\n// The \\u2026 character is an ellipsis\nconst sentenceDelimiters = \"?!;\\u2026\";\n\nconst fullStopRegex = new RegExp( \"^[\" + fullStop + \"]$\" );\nconst sentenceDelimiterRegex = new RegExp( \"^[\" + sentenceDelimiters + \"]$\" );\nconst sentenceRegex = new RegExp( \"^[^\" + fullStop + sentenceDelimiters + \"\\\\(\\\\)\\\\[\\\\]]+$\" );\n\nconst blockStartRegex = /^\\s*[[({]\\s*$/;\nconst blockEndRegex = /^\\s*[\\])}]\\s*$/;\n\nconst whiteSpaceStartRegex = /^\\s*/;\nconst whiteSpaceEndRegex = /\\s*$/;\n\n/**\n * Class for tokenizing a (html) text into sentences.\n */\nexport default class SentenceTokenizer {\n\t/**\n\t * Returns whether or not a certain character is a number.\n\t *\n\t * @param {string} character The character to check.\n\t * @returns {boolean} Whether or not the character is a capital letter.\n\t */\n\tisNumber( character ) {\n\t\treturn ! isNaN( parseInt( character, 10 ) );\n\t}\n\n\t/**\n\t * Returns whether or not a given character is quotation mark.\n\t *\n\t * @param {string} character The character to check.\n\t *\n\t * @returns {boolean} Whether or not the given character is a quotation mark.\n\t */\n\tisQuotation( character ) {\n\t\tcharacter = normalizeQuotes( character );\n\n\t\treturn \"'\" === character ||\n\t\t\t\"\\\"\" === character;\n\t}\n\n\t/**\n\t * Returns whether or not a given character is a punctuation mark that can be at the beginning\n\t * of a sentence, like ¿ and ¡ used in Spanish.\n\t *\n\t * @param {string} character The character to check.\n\t *\n\t * @returns {boolean} Whether or not the given character is a punctuation mark.\n\t */\n\tisPunctuation( character ) {\n\t\treturn \"¿\" === character ||\n\t\t\t\"¡\" === character;\n\t}\n\n\t/**\n\t * Removes duplicate whitespace from a given text.\n\t *\n\t * @param {string} text The text with duplicate whitespace.\n\t * @returns {string} The text without duplicate whitespace.\n\t */\n\tremoveDuplicateWhitespace( text ) {\n\t\treturn text.replace( /\\s+/, \" \" );\n\t}\n\n\t/**\n\t * Returns whether or not a certain character is a capital letter.\n\t *\n\t * @param {string} character The character to check.\n\t *\n\t * @returns {boolean} Whether or not the character is a capital letter.\n\t */\n\tisCapitalLetter( character ) {\n\t\treturn character !== character.toLocaleLowerCase();\n\t}\n\n\t/**\n\t * Retrieves the next two characters from an array with the two next tokens.\n\t *\n\t * @param {Array} nextTokens The two next tokens. Might be undefined.\n\t *\n\t * @returns {string} The next two characters.\n\t */\n\tgetNextTwoCharacters( nextTokens ) {\n\t\tlet next = \"\";\n\n\t\tif ( ! isUndefined( nextTokens[ 0 ] ) ) {\n\t\t\tnext += nextTokens[ 0 ].src;\n\t\t}\n\n\t\tif ( ! isUndefined( nextTokens[ 1 ] ) ) {\n\t\t\tnext += nextTokens[ 1 ].src;\n\t\t}\n\n\t\tnext = this.removeDuplicateWhitespace( next );\n\n\t\treturn next;\n\t}\n\n\t/**\n\t * Checks if the sentenceBeginning beginning is a valid beginning.\n\t *\n\t * @param {string} sentenceBeginning The beginning of the sentence to validate.\n\t *\n\t * @returns {boolean} Returns true if it is a valid beginning, false if it is not.\n\t */\n\tisValidSentenceBeginning( sentenceBeginning ) {\n\t\treturn (\n\t\t\tthis.isCapitalLetter( sentenceBeginning ) ||\n\t\t\tthis.isNumber( sentenceBeginning ) ||\n\t\t\tthis.isQuotation( sentenceBeginning ) ||\n\t\t\tthis.isPunctuation( sentenceBeginning )\n\t\t);\n\t}\n\n\t/**\n\t * Checks if the token is a valid sentence ending.\n\t *\n\t * @param {Object} token The token to validate.\n\t *\n\t * @returns {boolean} Returns true if the token is valid ending, false if it is not.\n\t */\n\tisSentenceStart( token ) {\n\t\treturn ( ! isUndefined( token ) && (\n\t\t\t\"html-start\" === token.type ||\n\t\t\t\"html-end\" === token.type ||\n\t\t\t\"block-start\" === token.type\n\t\t) );\n\t}\n\n\t/**\n\t * Creates a tokenizer.\n\t *\n\t * @returns {Object} The tokenizer and the tokens.\n\t */\n\tcreateTokenizer() {\n\t\tconst tokens = [];\n\t\tconst tokenizer = core( function( token ) {\n\t\t\ttokens.push( token );\n\t\t} );\n\n\t\ttokenizer.addRule( fullStopRegex, \"full-stop\" );\n\t\ttokenizer.addRule( blockStartRegex, \"block-start\" );\n\t\ttokenizer.addRule( blockEndRegex, \"block-end\" );\n\t\ttokenizer.addRule( sentenceDelimiterRegex, \"sentence-delimiter\" );\n\t\ttokenizer.addRule( sentenceRegex, \"sentence\" );\n\n\t\treturn {\n\t\t\ttokenizer,\n\t\t\ttokens,\n\t\t};\n\t}\n\n\t/**\n\t * Tokenizes the given text using the given tokenizer.\n\t *\n\t * @param {Tokenizer} tokenizer The tokenizer to use.\n\t * @param {string} text The text to tokenize.\n\t *\n\t * @returns {void}\n\t */\n\ttokenize( tokenizer, text ) {\n\t\ttokenizer.onText( text );\n\n\t\ttry {\n\t\t\ttokenizer.end();\n\t\t} catch ( e ) {\n\t\t\tconsole.error( \"Tokenizer end error:\", e, e.tokenizer2 );\n\t\t}\n\t}\n\n\t/**\n\t * Determines the start and end indices of a set of sentences form a text.\n\t *\n\t * @param {Sentence[]} sentences A set of sentences for which to determine indices.\n\t *\n\t * @returns {void}\n\t */\n\tdetermineIndices( sentences ) {\n\t\tlet currentIndex = 0;\n\n\t\tfor ( const sentence of sentences ) {\n\t\t\tconst startIndex = currentIndex;\n\t\t\tsentence.setStartIndex( currentIndex );\n\t\t\tconst endIndex = startIndex + sentence.text.length - 1;\n\t\t\tsentence.setEndIndex( endIndex );\n\t\t\tcurrentIndex = endIndex + 1;\n\t\t}\n\t}\n\n\t/**\n\t * Trims the white space from the beginning of a sentence and adjusts the sentence start index accordingly.\n\t *\n\t * @param {Sentence} sentence The sentence for which to trim the white space at the start.\n\t *\n\t * @returns {void}\n\t */\n\ttrimWhiteSpaceAtStart( sentence ) {\n\t\tconst whiteSpaceLength = sentence.text.match( whiteSpaceStartRegex )[ 0 ].length;\n\t\tsentence.setText( sentence.getText().slice( whiteSpaceLength ) );\n\t\tsentence.setStartIndex( sentence.getStartIndex() + whiteSpaceLength );\n\t}\n\n\t/**\n\t * Trims the white space from the end of a sentence and adjusts the sentence end index accordingly.\n\t *\n\t * @param {Sentence} sentence The sentence for which to trim the white space at the end.\n\t *\n\t * @returns {void}\n\t */\n\ttrimWhiteSpaceAtEnd( sentence ) {\n\t\tconst whiteSpaceLength = sentence.text.match( whiteSpaceEndRegex )[ 0 ].length;\n\t\tsentence.setText( sentence.getText().slice( 0, sentence.getText().length - whiteSpaceLength ) );\n\t\tsentence.setEndIndex( sentence.getEndIndex() - whiteSpaceLength );\n\t}\n\n\t/**\n\t * Trims white space from the beginning and end of sentences and adjusts the indices\n\t * of the sentence beginnings and ends accordingly.\n\t *\n\t * @param {Sentence[]} sentences The sentences for which to trim the whitespace.\n\t *\n\t * @returns {void}\n\t */\n\ttrimWhiteSpaces( sentences ) {\n\t\tfor ( const sentence of sentences ) {\n\t\t\tthis.trimWhiteSpaceAtStart( sentence );\n\t\t\tthis.trimWhiteSpaceAtEnd( sentence );\n\t\t}\n\t}\n\n\t/**\n\t * Returns an array of sentence objects for a given array of tokens; assumes that the text has already been split into blocks.\n\t *\n\t * @param {Object[]} tokenArray The tokens from the sentence tokenizer.\n\t *\n\t * @returns {Sentence[]} An array of sentence objects.\n\t */\n\tgetSentencesFromTokens( tokenArray ) {\n\t\tconst tokenSentences = [];\n\t\tlet currentSentence = new Sentence( \"\", 0, 0 ),\n\t\t\tnextSentenceStart;\n\n\t\ttokenArray.forEach( ( token, i ) => {\n\t\t\tlet hasNextSentence, nextCharacters;\n\t\t\tconst nextToken = tokenArray[ i + 1 ];\n\t\t\tconst secondToNextToken = tokenArray[ i + 2 ];\n\n\t\t\tswitch ( token.type ) {\n\t\t\t\tcase \"sentence\":\n\t\t\t\t\tcurrentSentence.appendText( token.src );\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase \"sentence-delimiter\":\n\t\t\t\t\tcurrentSentence.appendText( token.src );\n\t\t\t\t\tif ( ! isUndefined( nextToken ) && \"block-end\" !== nextToken.type && \"sentence-delimiter\" !== nextToken.type ) {\n\t\t\t\t\t\ttokenSentences.push( currentSentence );\n\t\t\t\t\t\tcurrentSentence = new Sentence( \"\" );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase \"full-stop\":\n\t\t\t\t\tcurrentSentence.appendText( token.src );\n\n\t\t\t\t\tnextCharacters = this.getNextTwoCharacters( [ nextToken, secondToNextToken ] );\n\n\t\t\t\t\t// For a new sentence we need to check the next two characters.\n\t\t\t\t\thasNextSentence = nextCharacters.length >= 2;\n\t\t\t\t\tnextSentenceStart = hasNextSentence ? nextCharacters[ 1 ] : \"\";\n\t\t\t\t\t// If the next character is a number, never split. For example: IPv4-numbers.\n\t\t\t\t\tif ( hasNextSentence && this.isNumber( nextCharacters[ 0 ] ) ) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\t// Only split on sentence delimiters when the next sentence looks like the start of a sentence.\n\t\t\t\t\tif ( ( hasNextSentence && this.isValidSentenceBeginning( nextSentenceStart ) ) || this.isSentenceStart( nextToken ) ) {\n\t\t\t\t\t\ttokenSentences.push( currentSentence );\n\t\t\t\t\t\tcurrentSentence = new Sentence( \"\" );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase \"block-start\":\n\t\t\t\t\tcurrentSentence.appendText( token.src );\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase \"block-end\":\n\t\t\t\t\tcurrentSentence.appendText( token.src );\n\t\t\t\t\tnextCharacters = this.getNextTwoCharacters( [ nextToken, secondToNextToken ] );\n\n\t\t\t\t\t// For a new sentence we need to check the next two characters.\n\t\t\t\t\thasNextSentence = nextCharacters.length >= 2;\n\t\t\t\t\tnextSentenceStart = hasNextSentence ? nextCharacters[ 0 ] : \"\";\n\t\t\t\t\t// If the next character is a number, never split. For example: IPv4-numbers.\n\t\t\t\t\tif ( hasNextSentence && this.isNumber( nextCharacters[ 0 ] ) ) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tif ( ( hasNextSentence && this.isValidSentenceBeginning( nextSentenceStart ) ) || this.isSentenceStart( nextToken ) ) {\n\t\t\t\t\t\ttokenSentences.push( currentSentence );\n\t\t\t\t\t\tcurrentSentence = new Sentence( \"\" );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t} );\n\n\t\tif ( currentSentence.getText() !== \"\" ) {\n\t\t\ttokenSentences.push( currentSentence );\n\t\t}\n\n\t\tthis.determineIndices( tokenSentences );\n\n\t\tthis.trimWhiteSpaces( tokenSentences );\n\n\t\treturn tokenSentences;\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"SentenceTokenizer.js","names":["isNaN","isUndefined","core","normalize","normalizeQuotes","Sentence","fullStop","sentenceDelimiters","fullStopRegex","RegExp","sentenceDelimiterRegex","sentenceRegex","blockStartRegex","blockEndRegex","whiteSpaceStartRegex","whiteSpaceEndRegex","SentenceTokenizer","isNumber","character","parseInt","isQuotation","isPunctuation","removeDuplicateWhitespace","text","replace","isCapitalLetter","toLocaleLowerCase","getNextTwoCharacters","nextTokens","next","src","isValidSentenceBeginning","sentenceBeginning","isSentenceStart","token","type","createTokenizer","tokens","tokenizer","push","addRule","tokenize","onText","end","e","console","error","tokenizer2","determineIndices","sentences","currentIndex","sentence","startIndex","setStartIndex","endIndex","length","setEndIndex","trimWhiteSpaceAtStart","whiteSpaceLength","match","setText","getText","slice","getStartIndex","trimWhiteSpaceAtEnd","getEndIndex","trimWhiteSpaces","getSentencesFromTokens","tokenArray","tokenSentences","currentSentence","nextSentenceStart","forEach","i","hasNextSentence","nextCharacters","nextToken","secondToNextToken","appendText"],"sources":["../../../../src/parsedPaper/build/linguisticParsing/SentenceTokenizer.js"],"sourcesContent":["import { isNaN, isUndefined } from \"lodash\";\n\nimport core from \"tokenizer2/core\";\nimport { normalize as normalizeQuotes } from \"@axyseo/languageProcessing/helpers/sanitize/quotes\";\n\nimport Sentence from \"./Sentence\";\n\n// All characters that indicate a sentence delimiter.\nconst fullStop = \".\";\n// The \\u2026 character is an ellipsis\nconst sentenceDelimiters = \"?!;\\u2026\";\n\nconst fullStopRegex = new RegExp( \"^[\" + fullStop + \"]$\" );\nconst sentenceDelimiterRegex = new RegExp( \"^[\" + sentenceDelimiters + \"]$\" );\nconst sentenceRegex = new RegExp( \"^[^\" + fullStop + sentenceDelimiters + \"\\\\(\\\\)\\\\[\\\\]]+$\" );\n\nconst blockStartRegex = /^\\s*[[({]\\s*$/;\nconst blockEndRegex = /^\\s*[\\])}]\\s*$/;\n\nconst whiteSpaceStartRegex = /^\\s*/;\nconst whiteSpaceEndRegex = /\\s*$/;\n\n/**\n * Class for tokenizing a (html) text into sentences.\n */\nexport default class SentenceTokenizer {\n\t/**\n\t * Returns whether or not a certain character is a number.\n\t *\n\t * @param {string} character The character to check.\n\t * @returns {boolean} Whether or not the character is a capital letter.\n\t */\n\tisNumber( character ) {\n\t\treturn ! isNaN( parseInt( character, 10 ) );\n\t}\n\n\t/**\n\t * Returns whether or not a given character is quotation mark.\n\t *\n\t * @param {string} character The character to check.\n\t *\n\t * @returns {boolean} Whether or not the given character is a quotation mark.\n\t */\n\tisQuotation( character ) {\n\t\tcharacter = normalizeQuotes( character );\n\n\t\treturn \"'\" === character ||\n\t\t\t\"\\\"\" === character;\n\t}\n\n\t/**\n\t * Returns whether or not a given character is a punctuation mark that can be at the beginning\n\t * of a sentence, like ¿ and ¡ used in Spanish.\n\t *\n\t * @param {string} character The character to check.\n\t *\n\t * @returns {boolean} Whether or not the given character is a punctuation mark.\n\t */\n\tisPunctuation( character ) {\n\t\treturn \"¿\" === character ||\n\t\t\t\"¡\" === character;\n\t}\n\n\t/**\n\t * Removes duplicate whitespace from a given text.\n\t *\n\t * @param {string} text The text with duplicate whitespace.\n\t * @returns {string} The text without duplicate whitespace.\n\t */\n\tremoveDuplicateWhitespace( text ) {\n\t\treturn text.replace( /\\s+/, \" \" );\n\t}\n\n\t/**\n\t * Returns whether or not a certain character is a capital letter.\n\t *\n\t * @param {string} character The character to check.\n\t *\n\t * @returns {boolean} Whether or not the character is a capital letter.\n\t */\n\tisCapitalLetter( character ) {\n\t\treturn character !== character.toLocaleLowerCase();\n\t}\n\n\t/**\n\t * Retrieves the next two characters from an array with the two next tokens.\n\t *\n\t * @param {Array} nextTokens The two next tokens. Might be undefined.\n\t *\n\t * @returns {string} The next two characters.\n\t */\n\tgetNextTwoCharacters( nextTokens ) {\n\t\tlet next = \"\";\n\n\t\tif ( ! isUndefined( nextTokens[ 0 ] ) ) {\n\t\t\tnext += nextTokens[ 0 ].src;\n\t\t}\n\n\t\tif ( ! isUndefined( nextTokens[ 1 ] ) ) {\n\t\t\tnext += nextTokens[ 1 ].src;\n\t\t}\n\n\t\tnext = this.removeDuplicateWhitespace( next );\n\n\t\treturn next;\n\t}\n\n\t/**\n\t * Checks if the sentenceBeginning beginning is a valid beginning.\n\t *\n\t * @param {string} sentenceBeginning The beginning of the sentence to validate.\n\t *\n\t * @returns {boolean} Returns true if it is a valid beginning, false if it is not.\n\t */\n\tisValidSentenceBeginning( sentenceBeginning ) {\n\t\treturn (\n\t\t\tthis.isCapitalLetter( sentenceBeginning ) ||\n\t\t\tthis.isNumber( sentenceBeginning ) ||\n\t\t\tthis.isQuotation( sentenceBeginning ) ||\n\t\t\tthis.isPunctuation( sentenceBeginning )\n\t\t);\n\t}\n\n\t/**\n\t * Checks if the token is a valid sentence ending.\n\t *\n\t * @param {Object} token The token to validate.\n\t *\n\t * @returns {boolean} Returns true if the token is valid ending, false if it is not.\n\t */\n\tisSentenceStart( token ) {\n\t\treturn ( ! isUndefined( token ) && (\n\t\t\t\"html-start\" === token.type ||\n\t\t\t\"html-end\" === token.type ||\n\t\t\t\"block-start\" === token.type\n\t\t) );\n\t}\n\n\t/**\n\t * Creates a tokenizer.\n\t *\n\t * @returns {Object} The tokenizer and the tokens.\n\t */\n\tcreateTokenizer() {\n\t\tconst tokens = [];\n\t\tconst tokenizer = core( function( token ) {\n\t\t\ttokens.push( token );\n\t\t} );\n\n\t\ttokenizer.addRule( fullStopRegex, \"full-stop\" );\n\t\ttokenizer.addRule( blockStartRegex, \"block-start\" );\n\t\ttokenizer.addRule( blockEndRegex, \"block-end\" );\n\t\ttokenizer.addRule( sentenceDelimiterRegex, \"sentence-delimiter\" );\n\t\ttokenizer.addRule( sentenceRegex, \"sentence\" );\n\n\t\treturn {\n\t\t\ttokenizer,\n\t\t\ttokens,\n\t\t};\n\t}\n\n\t/**\n\t * Tokenizes the given text using the given tokenizer.\n\t *\n\t * @param {Tokenizer} tokenizer The tokenizer to use.\n\t * @param {string} text The text to tokenize.\n\t *\n\t * @returns {void}\n\t */\n\ttokenize( tokenizer, text ) {\n\t\ttokenizer.onText( text );\n\n\t\ttry {\n\t\t\ttokenizer.end();\n\t\t} catch ( e ) {\n\t\t\tconsole.error( \"Tokenizer end error:\", e, e.tokenizer2 );\n\t\t}\n\t}\n\n\t/**\n\t * Determines the start and end indices of a set of sentences form a text.\n\t *\n\t * @param {Sentence[]} sentences A set of sentences for which to determine indices.\n\t *\n\t * @returns {void}\n\t */\n\tdetermineIndices( sentences ) {\n\t\tlet currentIndex = 0;\n\n\t\tfor ( const sentence of sentences ) {\n\t\t\tconst startIndex = currentIndex;\n\t\t\tsentence.setStartIndex( currentIndex );\n\t\t\tconst endIndex = startIndex + sentence.text.length - 1;\n\t\t\tsentence.setEndIndex( endIndex );\n\t\t\tcurrentIndex = endIndex + 1;\n\t\t}\n\t}\n\n\t/**\n\t * Trims the white space from the beginning of a sentence and adjusts the sentence start index accordingly.\n\t *\n\t * @param {Sentence} sentence The sentence for which to trim the white space at the start.\n\t *\n\t * @returns {void}\n\t */\n\ttrimWhiteSpaceAtStart( sentence ) {\n\t\tconst whiteSpaceLength = sentence.text.match( whiteSpaceStartRegex )[ 0 ].length;\n\t\tsentence.setText( sentence.getText().slice( whiteSpaceLength ) );\n\t\tsentence.setStartIndex( sentence.getStartIndex() + whiteSpaceLength );\n\t}\n\n\t/**\n\t * Trims the white space from the end of a sentence and adjusts the sentence end index accordingly.\n\t *\n\t * @param {Sentence} sentence The sentence for which to trim the white space at the end.\n\t *\n\t * @returns {void}\n\t */\n\ttrimWhiteSpaceAtEnd( sentence ) {\n\t\tconst whiteSpaceLength = sentence.text.match( whiteSpaceEndRegex )[ 0 ].length;\n\t\tsentence.setText( sentence.getText().slice( 0, sentence.getText().length - whiteSpaceLength ) );\n\t\tsentence.setEndIndex( sentence.getEndIndex() - whiteSpaceLength );\n\t}\n\n\t/**\n\t * Trims white space from the beginning and end of sentences and adjusts the indices\n\t * of the sentence beginnings and ends accordingly.\n\t *\n\t * @param {Sentence[]} sentences The sentences for which to trim the whitespace.\n\t *\n\t * @returns {void}\n\t */\n\ttrimWhiteSpaces( sentences ) {\n\t\tfor ( const sentence of sentences ) {\n\t\t\tthis.trimWhiteSpaceAtStart( sentence );\n\t\t\tthis.trimWhiteSpaceAtEnd( sentence );\n\t\t}\n\t}\n\n\t/**\n\t * Returns an array of sentence objects for a given array of tokens; assumes that the text has already been split into blocks.\n\t *\n\t * @param {Object[]} tokenArray The tokens from the sentence tokenizer.\n\t *\n\t * @returns {Sentence[]} An array of sentence objects.\n\t */\n\tgetSentencesFromTokens( tokenArray ) {\n\t\tconst tokenSentences = [];\n\t\tlet currentSentence = new Sentence( \"\", 0, 0 ),\n\t\t\tnextSentenceStart;\n\n\t\ttokenArray.forEach( ( token, i ) => {\n\t\t\tlet hasNextSentence, nextCharacters;\n\t\t\tconst nextToken = tokenArray[ i + 1 ];\n\t\t\tconst secondToNextToken = tokenArray[ i + 2 ];\n\n\t\t\tswitch ( token.type ) {\n\t\t\t\tcase \"sentence\":\n\t\t\t\t\tcurrentSentence.appendText( token.src );\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase \"sentence-delimiter\":\n\t\t\t\t\tcurrentSentence.appendText( token.src );\n\t\t\t\t\tif ( ! isUndefined( nextToken ) && \"block-end\" !== nextToken.type && \"sentence-delimiter\" !== nextToken.type ) {\n\t\t\t\t\t\ttokenSentences.push( currentSentence );\n\t\t\t\t\t\tcurrentSentence = new Sentence( \"\" );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase \"full-stop\":\n\t\t\t\t\tcurrentSentence.appendText( token.src );\n\n\t\t\t\t\tnextCharacters = this.getNextTwoCharacters( [ nextToken, secondToNextToken ] );\n\n\t\t\t\t\t// For a new sentence we need to check the next two characters.\n\t\t\t\t\thasNextSentence = nextCharacters.length >= 2;\n\t\t\t\t\tnextSentenceStart = hasNextSentence ? nextCharacters[ 1 ] : \"\";\n\t\t\t\t\t// If the next character is a number, never split. For example: IPv4-numbers.\n\t\t\t\t\tif ( hasNextSentence && this.isNumber( nextCharacters[ 0 ] ) ) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\t// Only split on sentence delimiters when the next sentence looks like the start of a sentence.\n\t\t\t\t\tif ( ( hasNextSentence && this.isValidSentenceBeginning( nextSentenceStart ) ) || this.isSentenceStart( nextToken ) ) {\n\t\t\t\t\t\ttokenSentences.push( currentSentence );\n\t\t\t\t\t\tcurrentSentence = new Sentence( \"\" );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase \"block-start\":\n\t\t\t\t\tcurrentSentence.appendText( token.src );\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase \"block-end\":\n\t\t\t\t\tcurrentSentence.appendText( token.src );\n\t\t\t\t\tnextCharacters = this.getNextTwoCharacters( [ nextToken, secondToNextToken ] );\n\n\t\t\t\t\t// For a new sentence we need to check the next two characters.\n\t\t\t\t\thasNextSentence = nextCharacters.length >= 2;\n\t\t\t\t\tnextSentenceStart = hasNextSentence ? nextCharacters[ 0 ] : \"\";\n\t\t\t\t\t// If the next character is a number, never split. For example: IPv4-numbers.\n\t\t\t\t\tif ( hasNextSentence && this.isNumber( nextCharacters[ 0 ] ) ) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tif ( ( hasNextSentence && this.isValidSentenceBeginning( nextSentenceStart ) ) || this.isSentenceStart( nextToken ) ) {\n\t\t\t\t\t\ttokenSentences.push( currentSentence );\n\t\t\t\t\t\tcurrentSentence = new Sentence( \"\" );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t} );\n\n\t\tif ( currentSentence.getText() !== \"\" ) {\n\t\t\ttokenSentences.push( currentSentence );\n\t\t}\n\n\t\tthis.determineIndices( tokenSentences );\n\n\t\tthis.trimWhiteSpaces( tokenSentences );\n\n\t\treturn tokenSentences;\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,11 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
import SentenceTokenizer from "./SentenceTokenizer";
|
|
2
2
|
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.parseTextIntoSentences = void 0;
|
|
7
|
-
var _SentenceTokenizer = _interopRequireDefault(require("./SentenceTokenizer"));
|
|
8
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
3
|
/**
|
|
10
4
|
* Parses a text into sentences.
|
|
11
5
|
*
|
|
@@ -14,7 +8,7 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
|
|
|
14
8
|
* @returns {string[]} An array of sentence objects.
|
|
15
9
|
*/
|
|
16
10
|
const parseTextIntoSentences = function (text) {
|
|
17
|
-
const sentenceTokenizer = new
|
|
11
|
+
const sentenceTokenizer = new SentenceTokenizer();
|
|
18
12
|
const {
|
|
19
13
|
tokenizer,
|
|
20
14
|
tokens
|
|
@@ -22,5 +16,5 @@ const parseTextIntoSentences = function (text) {
|
|
|
22
16
|
sentenceTokenizer.tokenize(tokenizer, text);
|
|
23
17
|
return sentenceTokenizer.getSentencesFromTokens(tokens);
|
|
24
18
|
};
|
|
25
|
-
|
|
19
|
+
export { parseTextIntoSentences };
|
|
26
20
|
//# sourceMappingURL=parseText.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseText.js","names":["
|
|
1
|
+
{"version":3,"file":"parseText.js","names":["SentenceTokenizer","parseTextIntoSentences","text","sentenceTokenizer","tokenizer","tokens","createTokenizer","tokenize","getSentencesFromTokens"],"sources":["../../../../src/parsedPaper/build/linguisticParsing/parseText.js"],"sourcesContent":["import SentenceTokenizer from \"./SentenceTokenizer\";\n\n/**\n * Parses a text into sentences.\n *\n * @param {string} text The text to parse.\n *\n * @returns {string[]} An array of sentence objects.\n */\nconst parseTextIntoSentences = function( text ) {\n\tconst sentenceTokenizer = new SentenceTokenizer();\n\tconst { tokenizer, tokens } = sentenceTokenizer.createTokenizer();\n\n\tsentenceTokenizer.tokenize( tokenizer, text );\n\treturn sentenceTokenizer.getSentencesFromTokens( tokens );\n};\n\nexport {\n\tparseTextIntoSentences,\n};\n"],"mappings":"AAAA,OAAOA,iBAAiB;;AAExB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,sBAAsB,GAAG,SAAAA,CAAUC,IAAI,EAAG;EAC/C,MAAOC,iBAAiB,GAAG,IAAIH,iBAAiB,CAAC,CAAC;EAClD,MAAM;IAAEI,SAAS;IAAEC;EAAO,CAAC,GAAGF,iBAAiB,CAACG,eAAe,CAAC,CAAC;EAEjEH,iBAAiB,CAACI,QAAQ,CAAEH,SAAS,EAAEF,IAAK,CAAC;EAC7C,OAAOC,iBAAiB,CAACK,sBAAsB,CAAEH,MAAO,CAAC;AAC1D,CAAC;AAED,SACCJ,sBAAsB","ignoreList":[]}
|
|
@@ -1,11 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
import buildTree from "./html/buildTree";
|
|
2
2
|
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _buildTree = _interopRequireDefault(require("./html/buildTree"));
|
|
8
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
3
|
/**
|
|
10
4
|
* Builds a tree representation of a source text.
|
|
11
5
|
*
|
|
@@ -27,7 +21,7 @@ class TreeBuilder {
|
|
|
27
21
|
* @private
|
|
28
22
|
*/
|
|
29
23
|
this._buildFunctions = {
|
|
30
|
-
html:
|
|
24
|
+
html: buildTree
|
|
31
25
|
};
|
|
32
26
|
this.build = this.build.bind(this);
|
|
33
27
|
this.register = this.register.bind(this);
|
|
@@ -78,5 +72,5 @@ class TreeBuilder {
|
|
|
78
72
|
this._buildFunctions[language] = buildFunction;
|
|
79
73
|
}
|
|
80
74
|
}
|
|
81
|
-
|
|
75
|
+
export default TreeBuilder;
|
|
82
76
|
//# sourceMappingURL=TreeBuilder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeBuilder.js","names":["
|
|
1
|
+
{"version":3,"file":"TreeBuilder.js","names":["buildTree","TreeBuilder","constructor","_buildFunctions","html","build","bind","register","sourceText","options","language","buildFunction"],"sources":["../../../../src/parsedPaper/build/tree/TreeBuilder.js"],"sourcesContent":["import buildTree from \"./html/buildTree\";\n\n/**\n * Builds a tree representation of a source text.\n *\n * Currently supported languages:\n * - HTML (`\"html\"`)\n *\n * @memberOf module:parsedPaper/builder\n */\nclass TreeBuilder {\n\t/**\n\t * Creates a new TreeBuilder.\n\t */\n\tconstructor() {\n\t\t/**\n\t\t * A registry holding the parse function to be called\n\t\t * for each supported formatting language.\n\t\t *\n\t\t * @type {Object<string,Function>}\n\t\t * @private\n\t\t */\n\t\tthis._buildFunctions = {\n\t\t\thtml: buildTree,\n\t\t};\n\n\t\tthis.build = this.build.bind( this );\n\t\tthis.register = this.register.bind( this );\n\t}\n\n\t/**\n\t * Parses the given source text to a tree representation.\n\t *\n\t * Chooses the right parser depending on the given formatting language in which the text has been written (defaults to HTML).\n\t *\n\t * @param {string} sourceText The source text that needs to be parsed to a tree representation.\n\t * @param {Object} [options] Parse options.\n\t * @param {string} [options.language=\"html\"] The formatting language in which the source text has been written, e.g. `\"html\"` for HTML.\n\t *\n\t * @returns {module:parsedPaper/structure.Node} The tree representation as parsed from the source text.\n\t */\n\tbuild( sourceText, options = { language: \"html\" } ) {\n\t\treturn this._buildFunctions[ options.language ]( sourceText );\n\t}\n\n\t/**\n\t * Registers a build function for the given formatting language.\n\t *\n\t * Call this method if you want to add support for another formatting language.\n\t *\n\t * @example\n\t * // Create a new build function.\n\t * const myBuilder = sourceText => {\n\t * const node = new Paragraph();\n\t * node.textContainer.appendText( sourceText );\n\t * return node;\n\t * };\n\t *\n\t * // Register the build function for the language \"my-language\".\n\t * treeBuilder.register( \"my-language\", myBuilder );\n\t *\n\t * // Build the tree using the registered builder.\n\t * const tree = treeBuilder.build( \"some input\", { language: \"my-language\" } );\n\t *\n\t * @param {string} language The language to register.\n\t * @param {function( sourceText: string ): module:parsedPaper/structure.Node} buildFunction The build function for the given language.\n\t *\n\t * @returns {void}\n\t */\n\tregister( language, buildFunction ) {\n\t\tthis._buildFunctions[ language ] = buildFunction;\n\t}\n}\n\nexport default TreeBuilder;\n"],"mappings":"AAAA,OAAOA,SAAS;;AAEhB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,WAAW,CAAC;EACjB;AACD;AACA;EACCC,WAAWA,CAAA,EAAG;IACb;AACF;AACA;AACA;AACA;AACA;AACA;IACE,IAAI,CAACC,eAAe,GAAG;MACtBC,IAAI,EAAEJ;IACP,CAAC;IAED,IAAI,CAACK,KAAK,GAAG,IAAI,CAACA,KAAK,CAACC,IAAI,CAAE,IAAK,CAAC;IACpC,IAAI,CAACC,QAAQ,GAAG,IAAI,CAACA,QAAQ,CAACD,IAAI,CAAE,IAAK,CAAC;EAC3C;;EAEA;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACCD,KAAKA,CAAEG,UAAU,EAAEC,OAAO,GAAG;IAAEC,QAAQ,EAAE;EAAO,CAAC,EAAG;IACnD,OAAO,IAAI,CAACP,eAAe,CAAEM,OAAO,CAACC,QAAQ,CAAE,CAAEF,UAAW,CAAC;EAC9D;;EAEA;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACCD,QAAQA,CAAEG,QAAQ,EAAEC,aAAa,EAAG;IACnC,IAAI,CAACR,eAAe,CAAEO,QAAQ,CAAE,GAAGC,aAAa;EACjD;AACD;AAEA,eAAeV,WAAW","ignoreList":[]}
|
|
@@ -1,11 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
import { pullAll } from "lodash";
|
|
2
|
+
import { ignoredHtmlElements } from "../html/htmlConstants";
|
|
2
3
|
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _lodash = require("lodash");
|
|
8
|
-
var _htmlConstants = require("../html/htmlConstants");
|
|
9
4
|
/**
|
|
10
5
|
* Gathers all elements that can be closed given the position of the current element in the source code.
|
|
11
6
|
*
|
|
@@ -153,7 +148,7 @@ const calculateTextIndices = function (node) {
|
|
|
153
148
|
// Close elements that can be closed and remove them from the list of open elements.
|
|
154
149
|
const elementsToClose = elementsThatCanBeClosed(element, openElements);
|
|
155
150
|
currentOffset = closeElements(elementsToClose, currentOffset);
|
|
156
|
-
|
|
151
|
+
pullAll(openElements, elementsToClose);
|
|
157
152
|
|
|
158
153
|
// Comments are self-closing formatting elements that are completely ignored in rendering.
|
|
159
154
|
if (element.type === "#comment") {
|
|
@@ -172,12 +167,12 @@ const calculateTextIndices = function (node) {
|
|
|
172
167
|
so its content should be added to the respective formatting element instead,
|
|
173
168
|
and the current offset should be updated.
|
|
174
169
|
*/
|
|
175
|
-
if (
|
|
170
|
+
if (ignoredHtmlElements.includes(element.type)) {
|
|
176
171
|
currentOffset = handleIgnoredContent(element, currentOffset);
|
|
177
172
|
}
|
|
178
173
|
});
|
|
179
174
|
// Close all remaining elements.
|
|
180
175
|
closeElements(openElements, currentOffset);
|
|
181
176
|
};
|
|
182
|
-
|
|
177
|
+
export default calculateTextIndices;
|
|
183
178
|
//# sourceMappingURL=calculateTextIndices.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calculateTextIndices.js","names":["_lodash","require","_htmlConstants","elementsThatCanBeClosed","currentElement","openElements","filter","el","endTag","sourceCodeLocation","endOffset","startOffset","closeElements","elementsToClose","currentOffset","sort","a","b","forEach","elementToClose","textEndIndex","endTagLength","handleIgnoredContent","element","textStartIndex","end","start","startTag","computeCommentStartEndTextIndices","computeElementStartTextIndex","startTagLength","calculateTextIndices","node","textContainer","formatting","length","pullAll","type","push","ignoredHtmlElements","includes","_default","exports","default"],"sources":["../../../../../src/parsedPaper/build/tree/cleanup/calculateTextIndices.js"],"sourcesContent":["import { pullAll } from \"lodash\";\n\nimport { ignoredHtmlElements } from \"../html/htmlConstants\";\n\n/**\n * Gathers all elements that can be closed given the position of the current element in the source code.\n *\n * Elements that can be closed are all elements that are opened before this element, but in which this element is\n * not nested.\n * E.g.\n * ```html\n * <strong>Hello</strong><em>World<b>!!!</b></em>`\n * ```\n * with `<b>!!!</b>` as the current element,\n * means that the `<strong>` needs to be closed, but `<em>` **not**.\n *\n * @param {module:parsedPaper/structure.FormattingElement} currentElement The current element.\n * @param {module:parsedPaper/structure.FormattingElement[]} openElements The elements that are currently open.\n *\n * @returns {module:parsedPaper/structure.FormattingElement[]} The elements that can be closed.\n */\nconst elementsThatCanBeClosed = function( currentElement, openElements ) {\n\treturn openElements.filter( el => {\n\t\tconst endTag = el.sourceCodeLocation.endTag;\n\t\treturn endTag.endOffset <= currentElement.sourceCodeLocation.startOffset;\n\t} );\n};\n\n/**\n * Closes the elements that can be closed given the position of the current element within the source code.\n *\n * This does two things:\n * 1. The closed element's text end index is calculated based on the current offset.\n * 2. The closed element's end tag lengths are counted towards the current offset, to make sure that the computed position\n * of the formatting elements are still correct.\n *\n * @param {module:parsedPaper/structure.FormattingElement[]} elementsToClose The list of open elements that need to be closed\n * @param {number} currentOffset The current offset when parsing the formatting elements\n *\n * @returns {number} The updated current offset\n *\n * @private\n */\nconst closeElements = function( elementsToClose, currentOffset ) {\n\t// Sort, so we close all elements in the right order.\n\telementsToClose.sort( ( a, b ) => a.sourceCodeLocation.endTag.endOffset - b.sourceCodeLocation.endTag.endOffset );\n\n\telementsToClose.forEach( elementToClose => {\n\t\tconst endTag = elementToClose.sourceCodeLocation.endTag;\n\t\t// Set the end position as seen in the text.\n\t\telementToClose.textEndIndex = endTag.startOffset - currentOffset;\n\t\t/*\n\t\t Add the end tag length of the to be closed element to the total offset.\n\t\t */\n\t\tconst endTagLength = endTag.endOffset - endTag.startOffset;\n\t\tcurrentOffset += endTagLength;\n\t} );\n\n\treturn currentOffset;\n};\n\n/**\n * Adds the content length of the given element (the part between the tags) to the current offset\n * and adds the content to the element as a parameter.\n *\n * @param {module:parsedPaper/structure.FormattingElement} element The element of which to add the content length.\n * @param {number} currentOffset The current offset to which to add the length to.\n *\n * @returns {number} The updated current offset\n */\nconst handleIgnoredContent = function( element, currentOffset ) {\n\t// Has 0 length in text, so end = start.\n\telement.textEndIndex = element.textStartIndex;\n\n\t// Update current offset.\n\tconst end = element.sourceCodeLocation.endTag ? element.sourceCodeLocation.endTag.startOffset : element.sourceCodeLocation.endOffset;\n\tconst start = element.sourceCodeLocation.startTag ? element.sourceCodeLocation.startTag.endOffset : element.sourceCodeLocation.startOffset;\n\n\tcurrentOffset += end - start;\n\n\treturn currentOffset;\n};\n\n\n/**\n * Sets the start and end text positions of a comment.\n *\n * @param {module:parsedPaper/structure.FormattingElement}\telement\t\t\tThe formatting element to assign start and end text positions to.\n * @param {int}\t\t\t\t\t\t\t\t\t\t\t\tcurrentOffset\tA sum of all characters in the source code that don't get rendered\n * \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(e.g., tags, comments).\n *\n * @returns {number} The length of the comment.\n *\n * @private\n */\nconst computeCommentStartEndTextIndices = function( element, currentOffset ) {\n\telement.textStartIndex = element.sourceCodeLocation.startOffset - currentOffset;\n\telement.textEndIndex = element.textStartIndex;\n\n\treturn element.sourceCodeLocation.endOffset - element.sourceCodeLocation.startOffset;\n};\n\n/**\n * Sets the start and end text positions of one formatting element.\n *\n * @param {module:parsedPaper/structure.FormattingElement}\telement\t\t\tThe formatting element to assign start and end text positions to.\n * @param {int}\t\t\t\t\t\t\t\t\t\t\t\tcurrentOffset\tA sum of all characters in the source code that don't get rendered\n * \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(e.g., tags, comments).\n *\n * @returns {int} The updated currentOffset.\n *\n * @private\n */\nconst computeElementStartTextIndex = function( element, currentOffset ) {\n\tconst startTag = element.sourceCodeLocation.startTag;\n\n\t// For example: \"<strong>\".length\n\tconst startTagLength = startTag.endOffset - startTag.startOffset;\n\n\tcurrentOffset += startTagLength;\n\n\t// Set start position of element in heading's / paragraph's text.\n\telement.textStartIndex = startTag.endOffset - currentOffset;\n\n\t/*\n\t Elements that have no end tags (e.g., void element like <img/> or self-closing elements) can be closed immediately.\n\t The text length of those elements will be automatically 0.\n\t */\n\tif ( ! element.sourceCodeLocation.endTag ) {\n\t\telement.textEndIndex = element.textStartIndex;\n\t}\n\n\treturn currentOffset;\n};\n\n/**\n * Sets the start and end position of the text in formatting elements of the given node.\n *\n * @param {module:parsedPaper/structure.LeafNode} node The node containing a TextContainer\n *\n * @returns {void}\n *\n * @private\n */\nconst calculateTextIndices = function( node ) {\n\tif ( ! node.textContainer.formatting || node.textContainer.formatting.length === 0 ) {\n\t\treturn;\n\t}\n\n\tconst openElements = [];\n\n\t/*\n\t Keeps track of the current total size of the start and end tags (and the ignored content)\n\t These should not be counted towards the start and end position of the elements in the text.\n\t */\n\tlet currentOffset = node.sourceCodeLocation.startTag ? node.sourceCodeLocation.startTag.endOffset : node.sourceCodeLocation.startOffset;\n\n\tnode.textContainer.formatting.forEach( element => {\n\t\t// Close elements that can be closed and remove them from the list of open elements.\n\t\tconst elementsToClose = elementsThatCanBeClosed( element, openElements );\n\t\tcurrentOffset = closeElements( elementsToClose, currentOffset );\n\t\tpullAll( openElements, elementsToClose );\n\n\t\t// Comments are self-closing formatting elements that are completely ignored in rendering.\n\t\tif ( element.type === \"#comment\" ) {\n\t\t\tcurrentOffset += computeCommentStartEndTextIndices( element, currentOffset );\n\t\t\treturn;\n\t\t}\n\n\t\tcurrentOffset = computeElementStartTextIndex( element, currentOffset );\n\n\t\t// If there is an endTag, the element should be closed in one of the next iterations of the loop.\n\t\tif ( element.sourceCodeLocation.endTag ) {\n\t\t\topenElements.push( element );\n\t\t}\n\n\t\t/*\n\t\t If this element is an ignored element its contents are not in the text,\n\t\t so its content should be added to the respective formatting element instead,\n\t\t and the current offset should be updated.\n\t\t */\n\t\tif ( ignoredHtmlElements.includes( element.type ) ) {\n\t\t\tcurrentOffset = handleIgnoredContent( element, currentOffset );\n\t\t}\n\t} );\n\t// Close all remaining elements.\n\tcloseElements( openElements, currentOffset );\n};\n\nexport default calculateTextIndices;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"calculateTextIndices.js","names":["pullAll","ignoredHtmlElements","elementsThatCanBeClosed","currentElement","openElements","filter","el","endTag","sourceCodeLocation","endOffset","startOffset","closeElements","elementsToClose","currentOffset","sort","a","b","forEach","elementToClose","textEndIndex","endTagLength","handleIgnoredContent","element","textStartIndex","end","start","startTag","computeCommentStartEndTextIndices","computeElementStartTextIndex","startTagLength","calculateTextIndices","node","textContainer","formatting","length","type","push","includes"],"sources":["../../../../../src/parsedPaper/build/tree/cleanup/calculateTextIndices.js"],"sourcesContent":["import { pullAll } from \"lodash\";\n\nimport { ignoredHtmlElements } from \"../html/htmlConstants\";\n\n/**\n * Gathers all elements that can be closed given the position of the current element in the source code.\n *\n * Elements that can be closed are all elements that are opened before this element, but in which this element is\n * not nested.\n * E.g.\n * ```html\n * <strong>Hello</strong><em>World<b>!!!</b></em>`\n * ```\n * with `<b>!!!</b>` as the current element,\n * means that the `<strong>` needs to be closed, but `<em>` **not**.\n *\n * @param {module:parsedPaper/structure.FormattingElement} currentElement The current element.\n * @param {module:parsedPaper/structure.FormattingElement[]} openElements The elements that are currently open.\n *\n * @returns {module:parsedPaper/structure.FormattingElement[]} The elements that can be closed.\n */\nconst elementsThatCanBeClosed = function( currentElement, openElements ) {\n\treturn openElements.filter( el => {\n\t\tconst endTag = el.sourceCodeLocation.endTag;\n\t\treturn endTag.endOffset <= currentElement.sourceCodeLocation.startOffset;\n\t} );\n};\n\n/**\n * Closes the elements that can be closed given the position of the current element within the source code.\n *\n * This does two things:\n * 1. The closed element's text end index is calculated based on the current offset.\n * 2. The closed element's end tag lengths are counted towards the current offset, to make sure that the computed position\n * of the formatting elements are still correct.\n *\n * @param {module:parsedPaper/structure.FormattingElement[]} elementsToClose The list of open elements that need to be closed\n * @param {number} currentOffset The current offset when parsing the formatting elements\n *\n * @returns {number} The updated current offset\n *\n * @private\n */\nconst closeElements = function( elementsToClose, currentOffset ) {\n\t// Sort, so we close all elements in the right order.\n\telementsToClose.sort( ( a, b ) => a.sourceCodeLocation.endTag.endOffset - b.sourceCodeLocation.endTag.endOffset );\n\n\telementsToClose.forEach( elementToClose => {\n\t\tconst endTag = elementToClose.sourceCodeLocation.endTag;\n\t\t// Set the end position as seen in the text.\n\t\telementToClose.textEndIndex = endTag.startOffset - currentOffset;\n\t\t/*\n\t\t Add the end tag length of the to be closed element to the total offset.\n\t\t */\n\t\tconst endTagLength = endTag.endOffset - endTag.startOffset;\n\t\tcurrentOffset += endTagLength;\n\t} );\n\n\treturn currentOffset;\n};\n\n/**\n * Adds the content length of the given element (the part between the tags) to the current offset\n * and adds the content to the element as a parameter.\n *\n * @param {module:parsedPaper/structure.FormattingElement} element The element of which to add the content length.\n * @param {number} currentOffset The current offset to which to add the length to.\n *\n * @returns {number} The updated current offset\n */\nconst handleIgnoredContent = function( element, currentOffset ) {\n\t// Has 0 length in text, so end = start.\n\telement.textEndIndex = element.textStartIndex;\n\n\t// Update current offset.\n\tconst end = element.sourceCodeLocation.endTag ? element.sourceCodeLocation.endTag.startOffset : element.sourceCodeLocation.endOffset;\n\tconst start = element.sourceCodeLocation.startTag ? element.sourceCodeLocation.startTag.endOffset : element.sourceCodeLocation.startOffset;\n\n\tcurrentOffset += end - start;\n\n\treturn currentOffset;\n};\n\n\n/**\n * Sets the start and end text positions of a comment.\n *\n * @param {module:parsedPaper/structure.FormattingElement}\telement\t\t\tThe formatting element to assign start and end text positions to.\n * @param {int}\t\t\t\t\t\t\t\t\t\t\t\tcurrentOffset\tA sum of all characters in the source code that don't get rendered\n * \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(e.g., tags, comments).\n *\n * @returns {number} The length of the comment.\n *\n * @private\n */\nconst computeCommentStartEndTextIndices = function( element, currentOffset ) {\n\telement.textStartIndex = element.sourceCodeLocation.startOffset - currentOffset;\n\telement.textEndIndex = element.textStartIndex;\n\n\treturn element.sourceCodeLocation.endOffset - element.sourceCodeLocation.startOffset;\n};\n\n/**\n * Sets the start and end text positions of one formatting element.\n *\n * @param {module:parsedPaper/structure.FormattingElement}\telement\t\t\tThe formatting element to assign start and end text positions to.\n * @param {int}\t\t\t\t\t\t\t\t\t\t\t\tcurrentOffset\tA sum of all characters in the source code that don't get rendered\n * \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(e.g., tags, comments).\n *\n * @returns {int} The updated currentOffset.\n *\n * @private\n */\nconst computeElementStartTextIndex = function( element, currentOffset ) {\n\tconst startTag = element.sourceCodeLocation.startTag;\n\n\t// For example: \"<strong>\".length\n\tconst startTagLength = startTag.endOffset - startTag.startOffset;\n\n\tcurrentOffset += startTagLength;\n\n\t// Set start position of element in heading's / paragraph's text.\n\telement.textStartIndex = startTag.endOffset - currentOffset;\n\n\t/*\n\t Elements that have no end tags (e.g., void element like <img/> or self-closing elements) can be closed immediately.\n\t The text length of those elements will be automatically 0.\n\t */\n\tif ( ! element.sourceCodeLocation.endTag ) {\n\t\telement.textEndIndex = element.textStartIndex;\n\t}\n\n\treturn currentOffset;\n};\n\n/**\n * Sets the start and end position of the text in formatting elements of the given node.\n *\n * @param {module:parsedPaper/structure.LeafNode} node The node containing a TextContainer\n *\n * @returns {void}\n *\n * @private\n */\nconst calculateTextIndices = function( node ) {\n\tif ( ! node.textContainer.formatting || node.textContainer.formatting.length === 0 ) {\n\t\treturn;\n\t}\n\n\tconst openElements = [];\n\n\t/*\n\t Keeps track of the current total size of the start and end tags (and the ignored content)\n\t These should not be counted towards the start and end position of the elements in the text.\n\t */\n\tlet currentOffset = node.sourceCodeLocation.startTag ? node.sourceCodeLocation.startTag.endOffset : node.sourceCodeLocation.startOffset;\n\n\tnode.textContainer.formatting.forEach( element => {\n\t\t// Close elements that can be closed and remove them from the list of open elements.\n\t\tconst elementsToClose = elementsThatCanBeClosed( element, openElements );\n\t\tcurrentOffset = closeElements( elementsToClose, currentOffset );\n\t\tpullAll( openElements, elementsToClose );\n\n\t\t// Comments are self-closing formatting elements that are completely ignored in rendering.\n\t\tif ( element.type === \"#comment\" ) {\n\t\t\tcurrentOffset += computeCommentStartEndTextIndices( element, currentOffset );\n\t\t\treturn;\n\t\t}\n\n\t\tcurrentOffset = computeElementStartTextIndex( element, currentOffset );\n\n\t\t// If there is an endTag, the element should be closed in one of the next iterations of the loop.\n\t\tif ( element.sourceCodeLocation.endTag ) {\n\t\t\topenElements.push( element );\n\t\t}\n\n\t\t/*\n\t\t If this element is an ignored element its contents are not in the text,\n\t\t so its content should be added to the respective formatting element instead,\n\t\t and the current offset should be updated.\n\t\t */\n\t\tif ( ignoredHtmlElements.includes( element.type ) ) {\n\t\t\tcurrentOffset = handleIgnoredContent( element, currentOffset );\n\t\t}\n\t} );\n\t// Close all remaining elements.\n\tcloseElements( openElements, currentOffset );\n};\n\nexport default calculateTextIndices;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
1
|
/**
|
|
8
2
|
* Gets the content of an element (the part _between_ the opening and closing tag) from the HTML source code.
|
|
9
3
|
*
|
|
@@ -23,5 +17,5 @@ const getElementContent = function (element, html) {
|
|
|
23
17
|
}
|
|
24
18
|
return "";
|
|
25
19
|
};
|
|
26
|
-
|
|
20
|
+
export default getElementContent;
|
|
27
21
|
//# sourceMappingURL=getElementContent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getElementContent.js","names":["getElementContent","element","html","location","start","startTag","endOffset","startOffset","end","endTag","slice"
|
|
1
|
+
{"version":3,"file":"getElementContent.js","names":["getElementContent","element","html","location","start","startTag","endOffset","startOffset","end","endTag","slice"],"sources":["../../../../../src/parsedPaper/build/tree/cleanup/getElementContent.js"],"sourcesContent":["/**\n * Gets the content of an element (the part _between_ the opening and closing tag) from the HTML source code.\n *\n * @param {module:parsedPaper/structure.Node|module:parsedPaper/structure.FormattingElement} element The element to parse the contents of\n * @param {string} html The source code to parse the contents from\n *\n * @returns {string} The element's contents.\n *\n * @private\n */\nconst getElementContent = function( element, html ) {\n\tconst location = element.location;\n\tif ( location ) {\n\t\tconst start = location.startTag ? location.startTag.endOffset : location.startOffset;\n\t\tconst end = location.endTag ? location.endTag.startOffset : location.endOffset;\n\t\treturn html.slice( start, end );\n\t}\n\treturn \"\";\n};\n\nexport default getElementContent;\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,iBAAiB,GAAG,SAAAA,CAAUC,OAAO,EAAEC,IAAI,EAAG;EACnD,MAAMC,QAAQ,GAAGF,OAAO,CAACE,QAAQ;EACjC,IAAKA,QAAQ,EAAG;IACf,MAAMC,KAAK,GAAGD,QAAQ,CAACE,QAAQ,GAAGF,QAAQ,CAACE,QAAQ,CAACC,SAAS,GAAGH,QAAQ,CAACI,WAAW;IACpF,MAAMC,GAAG,GAAGL,QAAQ,CAACM,MAAM,GAAGN,QAAQ,CAACM,MAAM,CAACF,WAAW,GAAGJ,QAAQ,CAACG,SAAS;IAC9E,OAAOJ,IAAI,CAACQ,KAAK,CAAEN,KAAK,EAAEI,GAAI,CAAC;EAChC;EACA,OAAO,EAAE;AACV,CAAC;AAED,eAAeR,iBAAiB","ignoreList":[]}
|
|
@@ -1,12 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
import { LeafNode } from "../../../structure/tree";
|
|
2
|
+
import calculateTextIndices from "./calculateTextIndices";
|
|
2
3
|
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _tree = require("../../../structure/tree");
|
|
8
|
-
var _calculateTextIndices = _interopRequireDefault(require("./calculateTextIndices"));
|
|
9
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
4
|
/**
|
|
11
5
|
* Cleans up a node in the tree.
|
|
12
6
|
*
|
|
@@ -18,9 +12,9 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
|
|
|
18
12
|
*/
|
|
19
13
|
const cleanUpNode = function (node) {
|
|
20
14
|
// Clean up formatting elements in headings and paragraphs.
|
|
21
|
-
if (node instanceof
|
|
15
|
+
if (node instanceof LeafNode) {
|
|
22
16
|
// Start and end position in leaf node's (header's or paragraph's) text without formatting.
|
|
23
|
-
(
|
|
17
|
+
calculateTextIndices(node);
|
|
24
18
|
}
|
|
25
19
|
return node;
|
|
26
20
|
};
|
|
@@ -39,5 +33,5 @@ const cleanUpTree = function (tree) {
|
|
|
39
33
|
tree.map(node => cleanUpNode(node));
|
|
40
34
|
return tree;
|
|
41
35
|
};
|
|
42
|
-
|
|
36
|
+
export default cleanUpTree;
|
|
43
37
|
//# sourceMappingURL=postParsing.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postParsing.js","names":["
|
|
1
|
+
{"version":3,"file":"postParsing.js","names":["LeafNode","calculateTextIndices","cleanUpNode","node","cleanUpTree","tree","map"],"sources":["../../../../../src/parsedPaper/build/tree/cleanup/postParsing.js"],"sourcesContent":["import { LeafNode } from \"../../../structure/tree\";\nimport calculateTextIndices from \"./calculateTextIndices\";\n\n/**\n * Cleans up a node in the tree.\n *\n * @param {module:parsedPaper/structure.Node} node The node that needs to be cleaned.\n *\n * @returns {module:parsedPaper/structure.Node} The cleaned up node.\n *\n * @private\n */\nconst cleanUpNode = function( node ) {\n\t// Clean up formatting elements in headings and paragraphs.\n\tif ( node instanceof LeafNode ) {\n\t\t// Start and end position in leaf node's (header's or paragraph's) text without formatting.\n\t\tcalculateTextIndices( node );\n\t}\n\treturn node;\n};\n\n/**\n * Cleans up the given tree after parsing of the HTML source code\n * by setting the start and end index of each formatting element in a leaf node's text.\n *\n * @param {module:parsedPaper/structure.Node} tree The tree structure to be cleaned.\n *\n * @returns {module:parsedPaper/structure.Node} The cleaned up tree.\n *\n * @private\n */\nconst cleanUpTree = function( tree ) {\n\ttree.map( node => cleanUpNode( node ) );\n\treturn tree;\n};\n\nexport default cleanUpTree;\n"],"mappings":"AAAA,SAASA,QAAQ;AACjB,OAAOC,oBAAoB;;AAE3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,WAAW,GAAG,SAAAA,CAAUC,IAAI,EAAG;EACpC;EACA,IAAKA,IAAI,YAAYH,QAAQ,EAAG;IAC/B;IACAC,oBAAoB,CAAEE,IAAK,CAAC;EAC7B;EACA,OAAOA,IAAI;AACZ,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,WAAW,GAAG,SAAAA,CAAUC,IAAI,EAAG;EACpCA,IAAI,CAACC,GAAG,CAAEH,IAAI,IAAID,WAAW,CAAEC,IAAK,CAAE,CAAC;EACvC,OAAOE,IAAI;AACZ,CAAC;AAED,eAAeD,WAAW","ignoreList":[]}
|