yoastseo
Version:
Yoast client-side content analysis
55 lines (53 loc) • 2 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _i18n = require("@wordpress/i18n");
var _shortlinker = require("../../../helpers/shortlinker");
var _AssessmentResult = _interopRequireDefault(require("../../../values/AssessmentResult"));
var _assessment = _interopRequireDefault(require("../assessment"));
var _lodash = require("lodash");
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
/**
* Represents the assessment that checks whether there is enough text in the paper.
*/
class TextPresenceAssessment extends _assessment.default {
/**
* Sets the identifier and the config.
*
* @param {object} config The configuration to use.
*
* @returns {void}
*/
constructor(config = {}) {
super();
const defaultConfig = {
urlTitle: (0, _shortlinker.createAnchorOpeningTag)("https://yoa.st/35h"),
urlCallToAction: (0, _shortlinker.createAnchorOpeningTag)("https://yoa.st/35i")
};
this.identifier = "textPresence";
this._config = (0, _lodash.merge)(defaultConfig, config);
}
/**
* Assesses that the paper has at least a little bit of content.
*
* @param {Paper} paper The paper to assess.
*
* @returns {AssessmentResult} The result of this assessment.
*/
getResult(paper) {
if (!this.hasEnoughContentForAssessment(paper)) {
const result = new _AssessmentResult.default();
result.setText((0, _i18n.sprintf)(
/* translators: %1$s and %3$s expand to links to articles on Yoast.com,
%2$s expands to the anchor end tag*/
(0, _i18n.__)("%1$sNot enough content%2$s: %3$sPlease add some content to enable a good analysis%2$s.", "wordpress-seo"), this._config.urlTitle, "</a>", this._config.urlCallToAction));
result.setScore(3);
return result;
}
return new _AssessmentResult.default();
}
}
exports.default = TextPresenceAssessment;
//# sourceMappingURL=TextPresenceAssessment.js.map