stylelint
Version:
A mighty CSS linter that helps you avoid errors and enforce conventions.
83 lines (79 loc) • 1.03 kB
JavaScript
import uniteSets from '../utils/uniteSets.mjs';
/** @type {ReadonlySet<string>} */
export const lengthUnits = new Set([
// Font-relative length units
'cap',
'ch',
'em',
'ex',
'ic',
'lh',
'rcap',
'rch',
'rem',
'rex',
'ric',
'rlh',
// Viewport-percentage lengths
'dvb',
'dvh',
'dvi',
'dvmax',
'dvmin',
'dvw',
'lvb',
'lvh',
'lvi',
'lvmax',
'lvmin',
'lvw',
'svb',
'svh',
'svi',
'svmax',
'svmin',
'svw',
'vb',
'vh',
'vi',
'vw',
'vmin',
'vmax',
'vm',
// Absolute length units
'px',
'mm',
'cm',
'in',
'pt',
'pc',
'q',
'mozmm',
// Flexible length units
'fr',
// Container query units
'cqw',
'cqh',
'cqi',
'cqb',
'cqmin',
'cqmax',
]);
/** @type {ReadonlySet<string>} */
export const resolutionUnits = new Set(['dpi', 'dpcm', 'dppx', 'x']);
/** @type {ReadonlySet<string>} */
export const units = uniteSets(lengthUnits, resolutionUnits, [
// Relative length units
'%',
// Time length units
's',
'ms',
// Angle
'deg',
'grad',
'turn',
'rad',
// Frequency
'Hz',
'kHz',
]);