UNPKG

yoastseo

Version:

Yoast client-side content analysis

101 lines (93 loc) 2.15 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; /** * Represents a prominent word in the context of relevant words. */ class ProminentWord { /** * Constructs Prominent word object. * * @constructor * * @param {string} word The word. * @param {string} [stem] The stem / base form of the word, defaults to the word. * @param {number} [occurrences] The number of occurrences, defaults to 0. */ constructor(word, stem, occurrences) { this._word = word; this._stem = stem ? stem : word; this._occurrences = occurrences || 0; } /** * Sets the word. * * @param {string} word The word to set. * * @returns {void}. */ setWord(word) { this._word = word; } /** * Returns the word. * * @returns {string} The word. */ getWord() { return this._word; } /** * Returns the stem of the word. * * @returns {string} The stem. */ getStem() { return this._stem; } /** * Sets the number of occurrences to the word. * * @param {int} numberOfOccurrences The number of occurrences to set. * * @returns {void}. */ setOccurrences(numberOfOccurrences) { this._occurrences = numberOfOccurrences; } /** * Returns the amount of occurrences of this word. * * @returns {number} The number of occurrences. */ getOccurrences() { return this._occurrences; } /** * Serializes the ProminentWord instance to an object. * * @returns {Object} The serialized ProminentWord. */ serialize() { return { _parseClass: "ProminentWord", word: this._word, stem: this._stem, occurrences: this._occurrences }; } /** * Parses the object to a ProminentWord. * * @param {Object} serialized The serialized object. * * @returns {ProminentWord} The parsed ProminentWord. */ static parse(serialized) { return new ProminentWord(serialized.word, serialized.stem, serialized.occurrences); } } var _default = exports.default = ProminentWord; //# sourceMappingURL=ProminentWord.js.map