function markDirty(node) {
      if (!('markDirty' in node)) {
        return
      }

      // Traverse the tree down to the leaf nodes
      if (node.nodes) {
        node.nodes.forEach((n) => markDirty(n))
      }

      // If it's a leaf node mark it as dirty
      // We do this here because marking a node as dirty
      // will walk up the tree and mark all parents as dirty
      // resulting in a lot of unnecessary work if we did this
      // for every single node
      if (!node.nodes) {
        node.markDirty()
      }
    }
/**
     * Use a private PostCSS API to remove the "clean" flag from the entire AST.
     * This is done because running process() on the AST will set the "clean"
     * flag on all nodes, which we don't want.
     *
     * This causes downstream plugins using the visitor API to be skipped.
     *
     * This is guarded because the PostCSS API is not public
     * and may change in future versions of PostCSS.
     *
     * See https://github.com/postcss/postcss/issues/1712 for more details
     *
     * @param {import('postcss').Node} node
     */
Use a private PostCSS API to remove the "clean" flag from the entire AST.
This is done because running process() on the AST will set the "clean"
flag on all nodes, which we don't want.

This causes downstream plugins using the visitor API to be skipped.

This is guarded because the PostCSS API is not public
and may change in future versions of PostCSS.



@param {import('postcss').Node} node
Use a private PostCSS API to remove the " clean " flag from the entire AST . This is done because running process () on the AST will set the " clean " flag on all nodes which we don ' t want . This causes downstream plugins using the visitor API to be skipped . This is guarded because the PostCSS API is not public and may change in future versions of PostCSS . @param { import ( ' postcss ' ) . Node } node
function markDirty(node) {
      if (!('markDirty' in node)) {
        return
      }
      if (node.nodes) {
        node.nodes.forEach((n) => markDirty(n))
      }
      if (!node.nodes) {
        node.markDirty()
      }
    }
function markDirty ( node ) { if ( ! ( 'markDirty' in node ) ) { return } if ( node . nodes ) { node . nodes . forEach ( ( n ) => markDirty ( n ) ) } if ( ! node . nodes ) { node . markDirty ( ) } }
Use a private PostCSS API to remove the "clean" flag from the entire AST.
Use a private PostCSS API to remove the " clean " flag from the entire AST .
// Traverse the tree down to the leaf nodes // If it's a leaf node mark it as dirty // We do this here because marking a node as dirty // will walk up the tree and mark all parents as dirty // resulting in a lot of unnecessary work if we did this // for every single node