/* eslint no-param-reassign: off */ const afterPattern = /:$/; const beforePattern = /^:(\s+)?/; // const bracketsPattern = /\{/; module.exports = (node) => { const { name, params = '' } = node; // situations like @page :last { color: red } should default to the built-in AtRule // LESS variables are @name : value; < note that for them to be valid LESS vars, they must end in // a semicolon. if (node.name.slice(-1) !== ':') { return; } if (afterPattern.test(name)) { const [match] = name.match(afterPattern); node.name = name.replace(match, ''); node.raws.afterName = match + (node.raws.afterName || ''); node.variable = true; node.value = node.params; } if (beforePattern.test(params)) { const [match] = params.match(beforePattern); node.value = params.replace(match, ''); node.raws.afterName = (node.raws.afterName || '') + match; node.variable = true; } };