yoastseo-dep
Version:
Yoast clientside page analysis
63 lines (57 loc) • 2.54 kB
JavaScript
import { inherits } from "util";
import IntroductionKeywordAssessment from "./assessments/seo/IntroductionKeywordAssessment";
import KeyphraseLengthAssessment from "./assessments/seo/KeyphraseLengthAssessment";
import KeyphraseDensityAssessment from "./assessments/seo/KeywordDensityAssessment";
import MetaDescriptionKeywordAssessment from "./assessments/seo/MetaDescriptionKeywordAssessment";
import TextCompetingLinksAssessment from "./assessments/seo/TextCompetingLinksAssessment";
import InternalLinksAssessment from "./assessments/seo/InternalLinksAssessment";
import KeyphraseInSEOTitleAssessment from "./assessments/seo/KeyphraseInSEOTitleAssessment";
import SlugKeywordAssessment from "./assessments/seo/UrlKeywordAssessment";
import Assessor from "./assessor";
import MetaDescriptionLength from "./assessments/seo/MetaDescriptionLengthAssessment";
import SubheadingsKeyword from "./assessments/seo/SubHeadingsKeywordAssessment";
import ImageKeyphrase from "./assessments/seo/KeyphraseInImageTextAssessment";
import ImageCount from "./assessments/seo/ImageCountAssessment";
import TextLength from "./assessments/seo/TextLengthAssessment";
import OutboundLinks from "./assessments/seo/OutboundLinksAssessment";
import TitleWidth from "./assessments/seo/PageTitleWidthAssessment";
import FunctionWordsInKeyphrase from "./assessments/seo/FunctionWordsInKeyphraseAssessment";
import SingleH1Assessment from "./assessments/seo/SingleH1Assessment";
/**
* Creates the Assessor
*
* @param {Researcher} researcher The researcher to use for the analysis.
* @param {Object?} options The options for this assessor.
* @param {Function} options.marker The marker to pass the list of marks to.
*
* @constructor
*/
const SEOAssessor = function( researcher, options ) {
Assessor.call( this, researcher, options );
this.type = "SEOAssessor";
this._assessments = [
new IntroductionKeywordAssessment(),
new KeyphraseLengthAssessment(),
new KeyphraseDensityAssessment(),
new MetaDescriptionKeywordAssessment(),
new MetaDescriptionLength(),
new SubheadingsKeyword(),
new TextCompetingLinksAssessment(),
new ImageKeyphrase(),
new ImageCount(),
new TextLength(),
new OutboundLinks(),
new KeyphraseInSEOTitleAssessment(),
new InternalLinksAssessment(),
new TitleWidth( {
scores: {
widthTooShort: 9,
},
}, true ),
new SlugKeywordAssessment(),
new FunctionWordsInKeyphrase(),
new SingleH1Assessment(),
];
};
inherits( SEOAssessor, Assessor );
export default SEOAssessor;