UNPKG

stylelint

Version:

A mighty, modern CSS linter.

32 lines (24 loc) 711 B
/* @flow */ 'use strict'; const _ = require('lodash'); function getNodeLine(node /*:: ?: postcss$node*/) /*: number | void*/ { return _.get(node, 'source.start.line'); } module.exports = function getPreviousNonSharedLineCommentNode( node /*:: ?: postcss$node*/, ) /*: postcss$node | void*/ { if (node === undefined) { return undefined; } const previousNode = node.prev(); if (_.get(previousNode, 'type') !== 'comment') { return previousNode; } if ( getNodeLine(node) === getNodeLine(previousNode) || (previousNode !== undefined && getNodeLine(previousNode) === getNodeLine(previousNode.prev())) ) { return getPreviousNonSharedLineCommentNode(previousNode); } return previousNode; };