'use strict'; const styleSearch = require('style-search'); const rangeOperators = ['>=', '<=', '>', '<', '=']; /** @typedef {import('style-search').StyleSearchMatch} StyleSearchMatch */ /** * @template {import('postcss').AtRule} T * @param {T} atRule * @param {(match: StyleSearchMatch, params: string, atRule: T) => void} cb */ module.exports = function findMediaOperator(atRule, cb) { if (atRule.name.toLowerCase() !== 'media') { return; } const params = atRule.raws.params ? atRule.raws.params.raw : atRule.params; styleSearch({ source: params, target: rangeOperators }, (match) => { const before = params[match.startIndex - 1]; if (before === '>' || before === '<') { return; } cb(match, params, atRule); }); };