UNPKG

website-auditfy

Version:

> Tool for validate your project on SEO, HTML, CSS, JS, TS, Performance, Security and A11Y

39 lines 1.43 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.TwitterRule = void 0; const message_model_1 = require("../../../models/message.model"); const message_enum_1 = require("../../../enum/message.enum"); class TwitterRule { constructor(value, lightHouse) { this.id = 'meta-twitter-rule'; this.tags = ['html', 'seo']; this.description = 'Twitter tags are present'; this.ruleUrl = 'https://developer.x.com/en/docs/x-for-websites/cards/guides/getting-started'; this.twitterTags = [ 'twitter:card', 'twitter:site', 'twitter:creator' ]; this.dom = value; this.lightHouse = lightHouse; } checkMetaTags() { return this.twitterTags.reduce((messages, tag) => { const meta = this.dom(`meta[property="${tag}"], meta[name="${tag}"]`); if (meta.length > 0) { messages.push(message_model_1.Message.create(`${this.description} ${tag} found`, message_enum_1.MessageType.passed)); } else { messages.push(message_model_1.Message.create(`${this.description} ${tag} missing`, this.ruleFlow)); } return messages; }, []); } check() { return [ ...this.checkMetaTags() ]; } } exports.TwitterRule = TwitterRule; //# sourceMappingURL=twitter.rule.js.map