Registry / devops / group-css-media-queries-loader

group-css-media-queries-loader

JSON →
library4.3.0jsnpmunverified

Webpack loader wrapping group-css-media-queries (v4.3.0) to combine identical @media queries from CSS files into a single block. Supports PostCSS 8+ and Webpack 2+. Unlike other media query merging tools, this loader integrates directly into webpack's build pipeline via standard rule configuration. Ships TypeScript definitions. Maintained with quarterly releases, used for optimizing CSS output size and performance.

npm install group-css-media-queries-loader
INSTALL
IMPORT
SIG · GROUP-CSS-MEDIA-QU
G
group-css-media-queries-loader
devopsjavascriptv4.3.0
Install
Import
Disk
Pass rate
0/ 6
Env Coverage0 / 6
glibc
1822
musl
1822
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
node 18223 runs
build_error
glibc
node 18223 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

GroupCssMediaQueriesLoader
module.exports = { module: { rules: [ { test: /\.css$/, use: ['style-loader', 'css-loader', 'group-css-media-queries-loader'] } ] } }
const GroupCssMediaQueriesLoader = require('group-css-media-queries-loader'); module.exports.rules.push({ test: /\.css$/, loader: GroupCssMediaQueriesLoader })
Loader is used via string reference in webpack config, not imported. Using require() directly as a loader function may cause issues.
sourceMap option
module.exports = { module: { rules: [ { test: /\.css$/, use: [ 'style-loader', 'css-loader', { loader: 'group-css-media-queries-loader', options: { sourceMap: true } } ] } ] } }
module.exports = { module: { rules: [ { test: /\.css$/, use: [ 'style-loader', 'css-loader', 'group-css-media-queries-loader?sourceMap=true' ] } ] } }
Options should be passed as object configuration, not query string. Query string format may not work reliably with webpack 4+.
Using with other PostCSS plugins
module.exports = { module: { rules: [ { test: /\.css$/, use: [ 'style-loader', 'css-loader', 'group-css-media-queries-loader', 'postcss-loader' ] } ] } }
module.exports = { module: { rules: [ { test: /\.css$/, use: [ 'style-loader', 'css-loader', 'postcss-loader', 'group-css-media-queries-loader' ] } ] } }
Loader order matters: group-css-media-queries-loader should come after postcss-loader if postcss modifies media queries, or before to avoid conflicts.

Webpack configuration using group-css-media-queries-loader to merge identical media queries from CSS files.

// webpack.config.js const path = require('path'); module.exports = { mode: 'development', entry: './src/index.js', output: { path: path.resolve(__dirname, 'dist'), filename: 'bundle.js' }, module: { rules: [ { test: /\.css$/, use: [ 'style-loader', 'css-loader', 'group-css-media-queries-loader' ] } ] } }; // src/index.js import './style.css'; // src/style.css @media (max-width: 600px) { .a { color: red; } } @media (max-width: 600px) { .b { color: blue; } } // Output: single @media (max-width: 600px) { .a { color: red; } .b { color: blue; } }
Debug
Known issues
breakingIn v4.x, the loader now requires postcss >=8.1.0 as a peer dependency. Older versions of PostCSS are no longer compatible.
fix
Upgrade postcss to version 8.1.0 or later.
affects: >=4.0.0
deprecatedThe 'sourceMap' option defaults to the value of 'compiler.devtool'. Using query string syntax for options (e.g., '?sourceMap=true') is deprecated in webpack 4+.
fix
Use object configuration format: { loader: 'group-css-media-queries-loader', options: { sourceMap: true } }.
affects: >=2.0.0
gotchaLoader order matters: if used after postcss-loader, postcss-loader may have already combined media queries, causing the loader to have no effect.
fix
Place group-css-media-queries-loader after style-loader and css-loader, but before postcss-loader if postcss does not merge media queries.
affects: >=0.0.1
gotchaThe loader only works on CSS files processed by css-loader. It will not work on non-CSS files or when used without css-loader.
fix
Ensure css-loader is in the rule before group-css-media-queries-loader.
affects: >=0.0.1
Errors
Common errors & fixes
Module not found: Error: Can't resolve 'group-css-media-queries-loader'
The loader is not installed or the package name is misspelled.
fix
Run 'yarn add -D group-css-media-queries-loader' or 'npm install --save-dev group-css-media-queries-loader'.
ValidationError: Invalid options object. group-css-media-queries-loader has been initialized using an options object that does not match the schema.
Options were passed as query string or invalid object format.
fix
Use the object format: { loader: 'group-css-media-queries-loader', options: { ... } }.
Error: PostCSS plugin group-css-media-queries requires PostCSS 8.
Installed postcss version is below 8.1.0, but loader requires PostCSS 8+.
fix
Update postcss to version >=8.1.0: 'npm install postcss@latest'.
Upgrade
Version history
4.3.0latest on npm
Audit
Dependencies
loader-utilsoptionalUsed for handling loader options and context in webpack.
postcssrequiredRequired peer dependency for CSS transformations (>=8.1.0).
webpackrequiredRequired peer dependency for loader integration (>=2.0.0).
Agent activity
6 hits · last 30 days
node
6
Resources
group-css-media-queries-loader — npm install group-css-media-queries-loader · libregistry