axyseo 2025.1.0-blog.2 → 2025.1.0-blog.3
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/cjs/scoring/assessments/seo/ImagesInContentAssessment.js +11 -5
- package/build/cjs/scoring/assessments/seo/ImagesInContentAssessment.js.map +1 -1
- package/build/esm/scoring/assessments/seo/ImagesInContentAssessment.js +10 -5
- package/build/esm/scoring/assessments/seo/ImagesInContentAssessment.js.map +1 -1
- package/package.json +1 -1
|
@@ -9,6 +9,11 @@ var _assessment = _interopRequireDefault(require("../assessment"));
|
|
|
9
9
|
var _AssessmentResult = _interopRequireDefault(require("../../../values/AssessmentResult"));
|
|
10
10
|
var _analysis = require("../../../const/analysis");
|
|
11
11
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
+
const DEFAULT_TITLE = 'Images in content';
|
|
13
|
+
const DEFAULT_GOOD_TITLE = 'Images included';
|
|
14
|
+
const DEFAULT_GOOD_CONTENT = 'Images are included and well placed.';
|
|
15
|
+
const DEFAULT_BAD_CONTENT = 'This post is text heavy. Add images to break up sections and improve reading experience.';
|
|
16
|
+
|
|
12
17
|
/**
|
|
13
18
|
* Represents the assessment that checks if the text has any images present.
|
|
14
19
|
*/
|
|
@@ -28,12 +33,12 @@ class ImagesInContentAssessment extends _assessment.default {
|
|
|
28
33
|
ctaType: 'fix',
|
|
29
34
|
priority: 'high',
|
|
30
35
|
fixPosition: 'description',
|
|
31
|
-
title:
|
|
32
|
-
goodTitle:
|
|
36
|
+
title: DEFAULT_TITLE,
|
|
37
|
+
goodTitle: DEFAULT_GOOD_TITLE,
|
|
33
38
|
content: {
|
|
34
|
-
good:
|
|
39
|
+
good: DEFAULT_GOOD_CONTENT,
|
|
35
40
|
improve: '',
|
|
36
|
-
bad:
|
|
41
|
+
bad: DEFAULT_BAD_CONTENT
|
|
37
42
|
}
|
|
38
43
|
};
|
|
39
44
|
this.identifier = _analysis.IMAGES_IN_CONTENT_ID;
|
|
@@ -85,7 +90,8 @@ class ImagesInContentAssessment extends _assessment.default {
|
|
|
85
90
|
status = 'good';
|
|
86
91
|
}
|
|
87
92
|
const score = this.getScore(this._config.priority, status);
|
|
88
|
-
const
|
|
93
|
+
const shouldUseTitleForGood = this._config.title !== DEFAULT_TITLE && this._config.goodTitle === DEFAULT_GOOD_TITLE;
|
|
94
|
+
const title = status === 'good' ? shouldUseTitleForGood ? this._config.title : this._config.goodTitle || this._config.title : this._config.title;
|
|
89
95
|
return {
|
|
90
96
|
score,
|
|
91
97
|
status,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ImagesInContentAssessment.js","names":["_lodash","require","_assessment","_interopRequireDefault","_AssessmentResult","_analysis","e","__esModule","default","ImagesInContentAssessment","Assessment","constructor","config","defaultConfig","id","IMAGES_IN_CONTENT_ID","docUrl","ctaType","priority","fixPosition","title","goodTitle","content","good","improve","bad","identifier","_config","merge","getResult","paper","researcher","imageCount","getResearch","assessmentResult","AssessmentResult","calculatedResult","calculateResult","setScore","score","setStatus","status","setTitle","isApplicable","hasText","getScore","exports"],"sources":["../../../../../src/scoring/assessments/seo/ImagesInContentAssessment.js"],"sourcesContent":["import {merge} from 'lodash';\nimport Assessment from '../assessment';\nimport AssessmentResult from '../../../values/AssessmentResult';\nimport {IMAGES_IN_CONTENT_ID} from '@axyseo/const/analysis';\n\n/**\n * Represents the assessment that checks if the text has any images present.\n */\nexport default class ImagesInContentAssessment 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: IMAGES_IN_CONTENT_ID,\n docUrl: 'https://docs.avada.io/seo-suite-help-center/seo-audit/on-page-seo/checklist',\n ctaType: 'fix',\n priority: 'high',\n fixPosition: 'description',\n title:
|
|
1
|
+
{"version":3,"file":"ImagesInContentAssessment.js","names":["_lodash","require","_assessment","_interopRequireDefault","_AssessmentResult","_analysis","e","__esModule","default","DEFAULT_TITLE","DEFAULT_GOOD_TITLE","DEFAULT_GOOD_CONTENT","DEFAULT_BAD_CONTENT","ImagesInContentAssessment","Assessment","constructor","config","defaultConfig","id","IMAGES_IN_CONTENT_ID","docUrl","ctaType","priority","fixPosition","title","goodTitle","content","good","improve","bad","identifier","_config","merge","getResult","paper","researcher","imageCount","getResearch","assessmentResult","AssessmentResult","calculatedResult","calculateResult","setScore","score","setStatus","status","setTitle","isApplicable","hasText","getScore","shouldUseTitleForGood","exports"],"sources":["../../../../../src/scoring/assessments/seo/ImagesInContentAssessment.js"],"sourcesContent":["import {merge} from 'lodash';\nimport Assessment from '../assessment';\nimport AssessmentResult from '../../../values/AssessmentResult';\nimport {IMAGES_IN_CONTENT_ID} from '@axyseo/const/analysis';\n\nconst DEFAULT_TITLE = 'Images in content';\nconst DEFAULT_GOOD_TITLE = 'Images included';\nconst DEFAULT_GOOD_CONTENT = 'Images are included and well placed.';\nconst DEFAULT_BAD_CONTENT =\n 'This post is text heavy. Add images to break up sections and improve reading experience.';\n\n/**\n * Represents the assessment that checks if the text has any images present.\n */\nexport default class ImagesInContentAssessment 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: IMAGES_IN_CONTENT_ID,\n docUrl: 'https://docs.avada.io/seo-suite-help-center/seo-audit/on-page-seo/checklist',\n ctaType: 'fix',\n priority: 'high',\n fixPosition: 'description',\n title: DEFAULT_TITLE,\n goodTitle: DEFAULT_GOOD_TITLE,\n content: {\n good: DEFAULT_GOOD_CONTENT,\n improve: '',\n bad: DEFAULT_BAD_CONTENT\n }\n };\n\n this.identifier = IMAGES_IN_CONTENT_ID;\n this._config = merge(defaultConfig, config);\n }\n\n /**\n * Execute the Assessment and return a result.\n *\n * @param {Paper} paper The Paper object to assess.\n * @param {Researcher} researcher The Researcher object containing all available researches.\n * @returns {AssessmentResult} The result of the assessment, containing both a score and a descriptive text.\n */\n getResult({paper, researcher}) {\n this.imageCount = researcher.getResearch('imageCount');\n\n const assessmentResult = new AssessmentResult({config: this._config});\n\n const calculatedResult = this.calculateResult();\n\n assessmentResult.setScore(calculatedResult.score);\n assessmentResult.setStatus(calculatedResult.status);\n assessmentResult.setTitle(calculatedResult.title);\n\n return assessmentResult;\n }\n\n /**\n * Checks whether the paper has text.\n *\n * @param {Paper} paper The paper to use for the assessment.\n *\n * @returns {boolean} True when there is text.\n */\n isApplicable(paper) {\n return paper.hasText();\n }\n\n /**\n *\n * @returns {{score: number, status: string, title: string}}\n */\n calculateResult() {\n let status = '';\n\n if (!this.imageCount || this.imageCount === 0) {\n status = 'improve';\n } else {\n status = 'good';\n }\n\n const score = this.getScore(this._config.priority, status);\n const shouldUseTitleForGood =\n this._config.title !== DEFAULT_TITLE && this._config.goodTitle === DEFAULT_GOOD_TITLE;\n const title =\n status === 'good'\n ? shouldUseTitleForGood\n ? this._config.title\n : this._config.goodTitle || this._config.title\n : this._config.title;\n\n return {\n score,\n status,\n title\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,6 +2,10 @@ import { merge } from 'lodash';
|
|
|
2
2
|
import Assessment from "../assessment";
|
|
3
3
|
import AssessmentResult from "../../../values/AssessmentResult";
|
|
4
4
|
import { IMAGES_IN_CONTENT_ID } from "../../../const/analysis";
|
|
5
|
+
const DEFAULT_TITLE = 'Images in content';
|
|
6
|
+
const DEFAULT_GOOD_TITLE = 'Images included';
|
|
7
|
+
const DEFAULT_GOOD_CONTENT = 'Images are included and well placed.';
|
|
8
|
+
const DEFAULT_BAD_CONTENT = 'This post is text heavy. Add images to break up sections and improve reading experience.';
|
|
5
9
|
|
|
6
10
|
/**
|
|
7
11
|
* Represents the assessment that checks if the text has any images present.
|
|
@@ -22,12 +26,12 @@ export default class ImagesInContentAssessment extends Assessment {
|
|
|
22
26
|
ctaType: 'fix',
|
|
23
27
|
priority: 'high',
|
|
24
28
|
fixPosition: 'description',
|
|
25
|
-
title:
|
|
26
|
-
goodTitle:
|
|
29
|
+
title: DEFAULT_TITLE,
|
|
30
|
+
goodTitle: DEFAULT_GOOD_TITLE,
|
|
27
31
|
content: {
|
|
28
|
-
good:
|
|
32
|
+
good: DEFAULT_GOOD_CONTENT,
|
|
29
33
|
improve: '',
|
|
30
|
-
bad:
|
|
34
|
+
bad: DEFAULT_BAD_CONTENT
|
|
31
35
|
}
|
|
32
36
|
};
|
|
33
37
|
this.identifier = IMAGES_IN_CONTENT_ID;
|
|
@@ -79,7 +83,8 @@ export default class ImagesInContentAssessment extends Assessment {
|
|
|
79
83
|
status = 'good';
|
|
80
84
|
}
|
|
81
85
|
const score = this.getScore(this._config.priority, status);
|
|
82
|
-
const
|
|
86
|
+
const shouldUseTitleForGood = this._config.title !== DEFAULT_TITLE && this._config.goodTitle === DEFAULT_GOOD_TITLE;
|
|
87
|
+
const title = status === 'good' ? shouldUseTitleForGood ? this._config.title : this._config.goodTitle || this._config.title : this._config.title;
|
|
83
88
|
return {
|
|
84
89
|
score,
|
|
85
90
|
status,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ImagesInContentAssessment.js","names":["merge","Assessment","AssessmentResult","IMAGES_IN_CONTENT_ID","ImagesInContentAssessment","constructor","config","defaultConfig","id","docUrl","ctaType","priority","fixPosition","title","goodTitle","content","good","improve","bad","identifier","_config","getResult","paper","researcher","imageCount","getResearch","assessmentResult","calculatedResult","calculateResult","setScore","score","setStatus","status","setTitle","isApplicable","hasText","getScore"],"sources":["../../../../../src/scoring/assessments/seo/ImagesInContentAssessment.js"],"sourcesContent":["import {merge} from 'lodash';\nimport Assessment from '../assessment';\nimport AssessmentResult from '../../../values/AssessmentResult';\nimport {IMAGES_IN_CONTENT_ID} from '@axyseo/const/analysis';\n\n/**\n * Represents the assessment that checks if the text has any images present.\n */\nexport default class ImagesInContentAssessment 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: IMAGES_IN_CONTENT_ID,\n docUrl: 'https://docs.avada.io/seo-suite-help-center/seo-audit/on-page-seo/checklist',\n ctaType: 'fix',\n priority: 'high',\n fixPosition: 'description',\n title:
|
|
1
|
+
{"version":3,"file":"ImagesInContentAssessment.js","names":["merge","Assessment","AssessmentResult","IMAGES_IN_CONTENT_ID","DEFAULT_TITLE","DEFAULT_GOOD_TITLE","DEFAULT_GOOD_CONTENT","DEFAULT_BAD_CONTENT","ImagesInContentAssessment","constructor","config","defaultConfig","id","docUrl","ctaType","priority","fixPosition","title","goodTitle","content","good","improve","bad","identifier","_config","getResult","paper","researcher","imageCount","getResearch","assessmentResult","calculatedResult","calculateResult","setScore","score","setStatus","status","setTitle","isApplicable","hasText","getScore","shouldUseTitleForGood"],"sources":["../../../../../src/scoring/assessments/seo/ImagesInContentAssessment.js"],"sourcesContent":["import {merge} from 'lodash';\nimport Assessment from '../assessment';\nimport AssessmentResult from '../../../values/AssessmentResult';\nimport {IMAGES_IN_CONTENT_ID} from '@axyseo/const/analysis';\n\nconst DEFAULT_TITLE = 'Images in content';\nconst DEFAULT_GOOD_TITLE = 'Images included';\nconst DEFAULT_GOOD_CONTENT = 'Images are included and well placed.';\nconst DEFAULT_BAD_CONTENT =\n 'This post is text heavy. Add images to break up sections and improve reading experience.';\n\n/**\n * Represents the assessment that checks if the text has any images present.\n */\nexport default class ImagesInContentAssessment 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: IMAGES_IN_CONTENT_ID,\n docUrl: 'https://docs.avada.io/seo-suite-help-center/seo-audit/on-page-seo/checklist',\n ctaType: 'fix',\n priority: 'high',\n fixPosition: 'description',\n title: DEFAULT_TITLE,\n goodTitle: DEFAULT_GOOD_TITLE,\n content: {\n good: DEFAULT_GOOD_CONTENT,\n improve: '',\n bad: DEFAULT_BAD_CONTENT\n }\n };\n\n this.identifier = IMAGES_IN_CONTENT_ID;\n this._config = merge(defaultConfig, config);\n }\n\n /**\n * Execute the Assessment and return a result.\n *\n * @param {Paper} paper The Paper object to assess.\n * @param {Researcher} researcher The Researcher object containing all available researches.\n * @returns {AssessmentResult} The result of the assessment, containing both a score and a descriptive text.\n */\n getResult({paper, researcher}) {\n this.imageCount = researcher.getResearch('imageCount');\n\n const assessmentResult = new AssessmentResult({config: this._config});\n\n const calculatedResult = this.calculateResult();\n\n assessmentResult.setScore(calculatedResult.score);\n assessmentResult.setStatus(calculatedResult.status);\n assessmentResult.setTitle(calculatedResult.title);\n\n return assessmentResult;\n }\n\n /**\n * Checks whether the paper has text.\n *\n * @param {Paper} paper The paper to use for the assessment.\n *\n * @returns {boolean} True when there is text.\n */\n isApplicable(paper) {\n return paper.hasText();\n }\n\n /**\n *\n * @returns {{score: number, status: string, title: string}}\n */\n calculateResult() {\n let status = '';\n\n if (!this.imageCount || this.imageCount === 0) {\n status = 'improve';\n } else {\n status = 'good';\n }\n\n const score = this.getScore(this._config.priority, status);\n const shouldUseTitleForGood =\n this._config.title !== DEFAULT_TITLE && this._config.goodTitle === DEFAULT_GOOD_TITLE;\n const title =\n status === 'good'\n ? shouldUseTitleForGood\n ? this._config.title\n : this._config.goodTitle || this._config.title\n : this._config.title;\n\n return {\n score,\n status,\n title\n };\n }\n}\n"],"mappings":"AAAA,SAAQA,KAAK,QAAO,QAAQ;AAC5B,OAAOC,UAAU;AACjB,OAAOC,gBAAgB;AACvB,SAAQC,oBAAoB;AAE5B,MAAMC,aAAa,GAAG,mBAAmB;AACzC,MAAMC,kBAAkB,GAAG,iBAAiB;AAC5C,MAAMC,oBAAoB,GAAG,sCAAsC;AACnE,MAAMC,mBAAmB,GACvB,0FAA0F;;AAE5F;AACA;AACA;AACA,eAAe,MAAMC,yBAAyB,SAASP,UAAU,CAAC;EAChE;AACF;AACA;AACA;AACA;AACA;AACA;EACEQ,WAAWA,CAACC,MAAM,GAAG,CAAC,CAAC,EAAE;IACvB,KAAK,CAAC,CAAC;IAEP,MAAMC,aAAa,GAAG;MACpBC,EAAE,EAAET,oBAAoB;MACxBU,MAAM,EAAE,6EAA6E;MACrFC,OAAO,EAAE,KAAK;MACdC,QAAQ,EAAE,MAAM;MAChBC,WAAW,EAAE,aAAa;MAC1BC,KAAK,EAAEb,aAAa;MACpBc,SAAS,EAAEb,kBAAkB;MAC7Bc,OAAO,EAAE;QACPC,IAAI,EAAEd,oBAAoB;QAC1Be,OAAO,EAAE,EAAE;QACXC,GAAG,EAAEf;MACP;IACF,CAAC;IAED,IAAI,CAACgB,UAAU,GAAGpB,oBAAoB;IACtC,IAAI,CAACqB,OAAO,GAAGxB,KAAK,CAACW,aAAa,EAAED,MAAM,CAAC;EAC7C;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;EACEe,SAASA,CAAC;IAACC,KAAK;IAAEC;EAAU,CAAC,EAAE;IAC7B,IAAI,CAACC,UAAU,GAAGD,UAAU,CAACE,WAAW,CAAC,YAAY,CAAC;IAEtD,MAAMC,gBAAgB,GAAG,IAAI5B,gBAAgB,CAAC;MAACQ,MAAM,EAAE,IAAI,CAACc;IAAO,CAAC,CAAC;IAErE,MAAMO,gBAAgB,GAAG,IAAI,CAACC,eAAe,CAAC,CAAC;IAE/CF,gBAAgB,CAACG,QAAQ,CAACF,gBAAgB,CAACG,KAAK,CAAC;IACjDJ,gBAAgB,CAACK,SAAS,CAACJ,gBAAgB,CAACK,MAAM,CAAC;IACnDN,gBAAgB,CAACO,QAAQ,CAACN,gBAAgB,CAACd,KAAK,CAAC;IAEjD,OAAOa,gBAAgB;EACzB;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;EACEQ,YAAYA,CAACZ,KAAK,EAAE;IAClB,OAAOA,KAAK,CAACa,OAAO,CAAC,CAAC;EACxB;;EAEA;AACF;AACA;AACA;EACEP,eAAeA,CAAA,EAAG;IAChB,IAAII,MAAM,GAAG,EAAE;IAEf,IAAI,CAAC,IAAI,CAACR,UAAU,IAAI,IAAI,CAACA,UAAU,KAAK,CAAC,EAAE;MAC7CQ,MAAM,GAAG,SAAS;IACpB,CAAC,MAAM;MACLA,MAAM,GAAG,MAAM;IACjB;IAEA,MAAMF,KAAK,GAAG,IAAI,CAACM,QAAQ,CAAC,IAAI,CAAChB,OAAO,CAACT,QAAQ,EAAEqB,MAAM,CAAC;IAC1D,MAAMK,qBAAqB,GACzB,IAAI,CAACjB,OAAO,CAACP,KAAK,KAAKb,aAAa,IAAI,IAAI,CAACoB,OAAO,CAACN,SAAS,KAAKb,kBAAkB;IACvF,MAAMY,KAAK,GACTmB,MAAM,KAAK,MAAM,GACbK,qBAAqB,GACnB,IAAI,CAACjB,OAAO,CAACP,KAAK,GAClB,IAAI,CAACO,OAAO,CAACN,SAAS,IAAI,IAAI,CAACM,OAAO,CAACP,KAAK,GAC9C,IAAI,CAACO,OAAO,CAACP,KAAK;IAExB,OAAO;MACLiB,KAAK;MACLE,MAAM;MACNnB;IACF,CAAC;EACH;AACF","ignoreList":[]}
|