axyseo 2.0.0-alpha.0.0.26 → 2.0.0-alpha.0.0.27

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.
@@ -114,7 +114,7 @@ class SentenceBeginningsAssessment extends _assessment.default {
114
114
  const assessmentResult = new _AssessmentResult.default({
115
115
  config: this._config
116
116
  });
117
- assessmentResult.setStatus(calculatedResult.status);
117
+ assessmentResult.setScore(calculatedResult.score);
118
118
  assessmentResult.setStatus(calculatedResult.status);
119
119
  assessmentResult.setBody(calculatedResult.body);
120
120
  return assessmentResult;
@@ -1 +1 @@
1
- {"version":3,"file":"SentenceBeginningsAssessment.js","names":["_lodash","require","_react","_interopRequireDefault","_polaris","_AssessmentResult","_assessment","_polarisIcons","e","__esModule","default","maximumConsecutiveDuplicates","SentenceBeginningsAssessment","Assessment","constructor","config","defaultConfig","id","priority","ctaType","docUrl","fixPosition","icon","TextBlockIcon","title","content","improve","bad","good","identifier","_config","merge","groupSentenceBeginnings","sentenceBeginnings","tooOften","partition","word","count","length","total","sortedCounts","sortBy","lowestCount","calculateSentenceBeginningsResult","groupedSentenceBeginnings","i18n","status","score","getScore","body","createElement","Text","as","href","target","rel","translate","getResult","paper","researcher","getResearch","calculatedResult","assessmentResult","AssessmentResult","setStatus","setBody","isApplicable","hasEnoughContentForAssessment","hasResearch","exports"],"sources":["../../../../src/scoring/assessments/readability/SentenceBeginningsAssessment.js"],"sourcesContent":["import {merge, partition, sortBy} from 'lodash';\nimport React from 'react';\nimport {Text} from '@shopify/polaris';\nimport AssessmentResult from '../../../values/AssessmentResult';\nimport Assessment from '../assessment';\nimport {TextBlockIcon} from '@shopify/polaris-icons';\n\nconst maximumConsecutiveDuplicates = 2;\n\n/**\n * Represents the assessment that checks whether there are three or more consecutive sentences beginning with the same word.\n */\nexport default class SentenceBeginningsAssessment extends Assessment {\n /**\n * Sets the identifier and the config.\n *\n * @param {object} config The configuration to use.\n *\n * @returns {void}\n */\n constructor(config = {}) {\n super();\n\n const defaultConfig = {\n id: 'sentenceBeginnings',\n priority: 'medium',\n ctaType: 'fix',\n docUrl:\n 'https://docs.avada.io/seo-suite-help-center/seo-audit/on-page-seo/checklist#sentence-beginnings',\n fixPosition: 'description',\n icon: TextBlockIcon,\n title: 'Sentence beginnings',\n content: {\n improve: '',\n bad:\n 'Found sentences with repetitive beginnings. Change the wording for more engaging content.',\n good: 'No sentences with repetitive beginnings found.'\n }\n };\n\n this.identifier = 'sentenceBeginnings';\n this._config = merge(defaultConfig, config);\n }\n\n /**\n * Counts and groups the number too often used sentence beginnings and determines the lowest count within that group.\n *\n * @param {array} sentenceBeginnings The array containing the objects containing the beginning words and counts.\n *\n * @returns {object} The object containing the total number of too often used beginnings and the lowest count within those.\n */\n groupSentenceBeginnings(sentenceBeginnings) {\n const tooOften = partition(sentenceBeginnings, function(word) {\n return word.count > maximumConsecutiveDuplicates;\n });\n\n if (tooOften[0].length === 0) {\n return {total: 0};\n }\n\n const sortedCounts = sortBy(tooOften[0], function(word) {\n return word.count;\n });\n\n return {total: tooOften[0].length, lowestCount: sortedCounts[0].count};\n }\n\n /**\n *\n * @param groupedSentenceBeginnings\n * @param i18n\n * @returns {{score: number, body: React.JSX.Element, status: string}}\n */\n calculateSentenceBeginningsResult(groupedSentenceBeginnings, i18n) {\n let status = '';\n if (groupedSentenceBeginnings.total > 0) {\n status = 'bad';\n } else {\n status = 'good';\n }\n\n const score = this.getScore(this._config.priority, status);\n\n return {\n score,\n status,\n body: (\n <Text as={'span'}>\n {this._config.content[status]}{' '}\n {this._config.docUrl && (\n <a href={this._config.docUrl} target=\"_blank\" rel=\"noreferrer\">\n {i18n ? i18n.translate(`Axyseo.Button.learnMore`) : 'Learn more'}\n </a>\n )}\n </Text>\n )\n };\n }\n\n /**\n *\n * @param paper\n * @param researcher\n * @param i18n\n * @returns {AssessmentResult}\n */\n getResult({paper, researcher, i18n}) {\n const sentenceBeginnings = researcher.getResearch('getSentenceBeginnings');\n const groupedSentenceBeginnings = this.groupSentenceBeginnings(sentenceBeginnings);\n const calculatedResult = this.calculateSentenceBeginningsResult(\n groupedSentenceBeginnings,\n i18n\n );\n const assessmentResult = new AssessmentResult({config: this._config});\n\n assessmentResult.setStatus(calculatedResult.status);\n assessmentResult.setStatus(calculatedResult.status);\n assessmentResult.setBody(calculatedResult.body);\n\n return assessmentResult;\n }\n\n /**\n * Checks if the sentence beginnings assessment is applicable to the paper.\n *\n * @param {Object} paper The paper to check.\n * @param {Researcher} researcher The researcher object.\n *\n * @returns {boolean} Returns true if the language is available and the paper is not empty.\n */\n isApplicable(paper, researcher) {\n return (\n this.hasEnoughContentForAssessment(paper) && researcher.hasResearch('getSentenceBeginnings')\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"SentenceBeginningsAssessment.js","names":["_lodash","require","_react","_interopRequireDefault","_polaris","_AssessmentResult","_assessment","_polarisIcons","e","__esModule","default","maximumConsecutiveDuplicates","SentenceBeginningsAssessment","Assessment","constructor","config","defaultConfig","id","priority","ctaType","docUrl","fixPosition","icon","TextBlockIcon","title","content","improve","bad","good","identifier","_config","merge","groupSentenceBeginnings","sentenceBeginnings","tooOften","partition","word","count","length","total","sortedCounts","sortBy","lowestCount","calculateSentenceBeginningsResult","groupedSentenceBeginnings","i18n","status","score","getScore","body","createElement","Text","as","href","target","rel","translate","getResult","paper","researcher","getResearch","calculatedResult","assessmentResult","AssessmentResult","setScore","setStatus","setBody","isApplicable","hasEnoughContentForAssessment","hasResearch","exports"],"sources":["../../../../src/scoring/assessments/readability/SentenceBeginningsAssessment.js"],"sourcesContent":["import {merge, partition, sortBy} from 'lodash';\nimport React from 'react';\nimport {Text} from '@shopify/polaris';\nimport AssessmentResult from '../../../values/AssessmentResult';\nimport Assessment from '../assessment';\nimport {TextBlockIcon} from '@shopify/polaris-icons';\n\nconst maximumConsecutiveDuplicates = 2;\n\n/**\n * Represents the assessment that checks whether there are three or more consecutive sentences beginning with the same word.\n */\nexport default class SentenceBeginningsAssessment extends Assessment {\n /**\n * Sets the identifier and the config.\n *\n * @param {object} config The configuration to use.\n *\n * @returns {void}\n */\n constructor(config = {}) {\n super();\n\n const defaultConfig = {\n id: 'sentenceBeginnings',\n priority: 'medium',\n ctaType: 'fix',\n docUrl:\n 'https://docs.avada.io/seo-suite-help-center/seo-audit/on-page-seo/checklist#sentence-beginnings',\n fixPosition: 'description',\n icon: TextBlockIcon,\n title: 'Sentence beginnings',\n content: {\n improve: '',\n bad:\n 'Found sentences with repetitive beginnings. Change the wording for more engaging content.',\n good: 'No sentences with repetitive beginnings found.'\n }\n };\n\n this.identifier = 'sentenceBeginnings';\n this._config = merge(defaultConfig, config);\n }\n\n /**\n * Counts and groups the number too often used sentence beginnings and determines the lowest count within that group.\n *\n * @param {array} sentenceBeginnings The array containing the objects containing the beginning words and counts.\n *\n * @returns {object} The object containing the total number of too often used beginnings and the lowest count within those.\n */\n groupSentenceBeginnings(sentenceBeginnings) {\n const tooOften = partition(sentenceBeginnings, function(word) {\n return word.count > maximumConsecutiveDuplicates;\n });\n\n if (tooOften[0].length === 0) {\n return {total: 0};\n }\n\n const sortedCounts = sortBy(tooOften[0], function(word) {\n return word.count;\n });\n\n return {total: tooOften[0].length, lowestCount: sortedCounts[0].count};\n }\n\n /**\n *\n * @param groupedSentenceBeginnings\n * @param i18n\n * @returns {{score: number, body: React.JSX.Element, status: string}}\n */\n calculateSentenceBeginningsResult(groupedSentenceBeginnings, i18n) {\n let status = '';\n if (groupedSentenceBeginnings.total > 0) {\n status = 'bad';\n } else {\n status = 'good';\n }\n\n const score = this.getScore(this._config.priority, status);\n\n return {\n score,\n status,\n body: (\n <Text as={'span'}>\n {this._config.content[status]}{' '}\n {this._config.docUrl && (\n <a href={this._config.docUrl} target=\"_blank\" rel=\"noreferrer\">\n {i18n ? i18n.translate(`Axyseo.Button.learnMore`) : 'Learn more'}\n </a>\n )}\n </Text>\n )\n };\n }\n\n /**\n *\n * @param paper\n * @param researcher\n * @param i18n\n * @returns {AssessmentResult}\n */\n getResult({paper, researcher, i18n}) {\n const sentenceBeginnings = researcher.getResearch('getSentenceBeginnings');\n const groupedSentenceBeginnings = this.groupSentenceBeginnings(sentenceBeginnings);\n const calculatedResult = this.calculateSentenceBeginningsResult(\n groupedSentenceBeginnings,\n i18n\n );\n const assessmentResult = new AssessmentResult({config: this._config});\n\n assessmentResult.setScore(calculatedResult.score);\n assessmentResult.setStatus(calculatedResult.status);\n assessmentResult.setBody(calculatedResult.body);\n\n return assessmentResult;\n }\n\n /**\n * Checks if the sentence beginnings assessment is applicable to the paper.\n *\n * @param {Object} paper The paper to check.\n * @param {Researcher} researcher The researcher object.\n *\n * @returns {boolean} Returns true if the language is available and the paper is not empty.\n */\n isApplicable(paper, researcher) {\n return (\n this.hasEnoughContentForAssessment(paper) && researcher.hasResearch('getSentenceBeginnings')\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "axyseo",
3
- "version": "2.0.0-alpha.0.0.26",
3
+ "version": "2.0.0-alpha.0.0.27",
4
4
  "main": "build/index.js",
5
5
  "scripts": {
6
6
  "build": "yarn clean && yarn build:js && yarn build:types",