🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

eslint-plugin-mso-email

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

eslint-plugin-mso-email

ESLint plugin for Outlook/HTML email markup — conditional comments, MSO CSS, VML, and layout tables

latest
Source
npmnpm
Version
2.0.0
Version published
Weekly downloads
146
-4.58%
Maintainers
1
Weekly downloads
 
Created
Source

eslint-plugin-mso-email

ESLint plugin for Outlook/HTML email markup: MSO conditional comments, Outlook CSS properties, VML namespaces, and layout table accessibility.

Extracts conditional comments into a virtual file for AST-based rules, and lints full HTML documents for MSO CSS, VML, and table semantics.

Installation

npm install eslint-plugin-mso-email --save-dev

Requires ESLint 9+ (flat config) and Node.js 22+.

Quick Start

// eslint.config.js
import mso from 'eslint-plugin-mso-email';

export default [mso.configs.recommended];

This lints **/*.html, **/*.amp, and **/*.ampscript files.

Rules

All rules use the mso/ plugin prefix.

RuleDefaultFixableDescription
mso/valid-mso-conditionerrorpartial (deterministic typos)Validate MSO conditional opener syntax
mso/matching-mso-endiferrornoMatch openers and [endif] closers
mso/matching-mso-endif-typewarnyesMatch closer variant to opener style
mso/no-unknown-mso-propertywarnpartial (typo hints)Disallow unknown mso-* CSS properties
mso/vml-requires-namespacewarnyesRequire xmlns:* on html when using VML
mso/no-unknown-vml-tagwarnyesDisallow unknown VML tag names
mso/no-unknown-vml-attributewarnpartial (typo hints)Disallow unknown VML attributes
mso/table-presentation-rolewarnyesRequire role="presentation" on layout tables

Fixable legend

ValueMeaning
yesESLint can auto-fix every reported violation for that rule (with default options).
partial (deterministic typos)Auto-fix only when the parser returns a single deterministic replacement for the condition substring (for example mosmso). Invalid operators, unknown versions, and ambiguous conditions are reported without a fix.
partial (typo hints)Auto-fix only when the property, tag, or attribute name has a close allowlist match within edit distance. Unknown names with no hint are still reported, but not auto-fixed.
noReport only — inserting or removing structural comment markers is unsafe.

License

MIT

Keywords

eslint

FAQs

Package last updated on 10 Jul 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts