egoist / rollup-plugin-postcss

Seamless integration between Rollup and PostCSS.
MIT License
677 stars 217 forks source link

Error thrown "@use rules must be written before any other rules." #443

Open jdannemann opened 1 year ago

jdannemann commented 1 year ago

I am attempting to add the autoprefixer plugin, but I get a build error, "@use rules must be written before any other rules.".

Here is my rollup config:

module.exports = options => ({
  ...options,
  plugins :[
    scss({
      failOnError: false,
      processor :() => postcss({
        plugins: [
          autoprefixer()
        ],
      }),
    }),
    ...options.plugins,
  ],
});

After setting a breakpoint, it appears the offending code is here. This block combines all the stylesheets into one and does not consider that @use statements must appear in the file's header.

      // Combine all stylesheets
      let scss = ''
      for (const id in styles) {
        scss += styles[id] || ''
      }
jdannemann commented 1 year ago

Please delete this. I opened the issue in the wrong repo. This is supposed to be an issue for the rollup-plugin-scss repo.