
Security News
MCP Community Begins Work on Official MCP Metaregistry
The MCP community is launching an official registry to standardize AI tool discovery and let agents dynamically find and install MCP servers.
postcss-modules-extract-imports
Advanced tools
A CSS Modules transform to extract local aliases for inline imports
The postcss-modules-extract-imports npm package is a PostCSS plugin that helps in transforming CSS modules by extracting all local imports and creating a mapping for them. It is commonly used in a CSS module system where CSS is composed in a modular and reusable way. This plugin processes CSS files and rewrites import statements so that they can be bundled correctly by a module bundler.
Extracting local imports
This feature allows the plugin to extract local imports from a CSS file. When a CSS class composes from another, this plugin rewrites the import to ensure that the composed class includes the necessary styles from the imported class.
import postcss from 'postcss';
import extractImports from 'postcss-modules-extract-imports';
const css = `.className { color: green; } .anotherClass { composes: className; }`;
postcss([extractImports()])
.process(css, { from: undefined })
.then(result => {
console.log(result.css);
});
postcss-import is a PostCSS plugin that allows you to transform @import rules by inlining content. It is similar to postcss-modules-extract-imports in that it processes imports, but it focuses on inlining the imported content rather than extracting and mapping it for CSS modules.
postcss-easy-import is a wrapper around postcss-import, providing additional features like glob pattern matching and the ability to prefix imports. It simplifies the import process but does not specifically target the CSS modules pattern like postcss-modules-extract-imports.
postcss-advanced-variables is a plugin that allows you to use variables, conditionals, and iterators in your CSS. While it does not directly handle imports, it provides a modular approach to CSS that can complement the functionality provided by postcss-modules-extract-imports.
Transforms:
:local(.continueButton) {
composes: button from "library/button.css";
color: green;
}
into:
:import("library/button.css") {
button: __tmp_487387465fczSDGHSABb;
}
:local(.continueButton) {
composes: __tmp_487387465fczSDGHSABb;
color: green;
}
['composes']
alone.composes: className [... className] from "path/to/file.css", className [... className], className [... className] from global;
failOnWrongOrder
bool
generates exception for unpredictable imports order..aa {
composes: b from "./b.css";
composes: c from "./c.css";
}
.bb {
/* "b.css" should be before "c.css" in this case */
composes: c from "./c.css";
composes: b from "./b.css";
}
npm install
npm test
ISC
Glen Maddern, 2015.
3.1.0 - 2024-04-03
.class { composes: a b, c, e d from global, f g from "./file.css"; }
FAQs
A CSS Modules transform to extract local aliases for inline imports
The npm package postcss-modules-extract-imports receives a total of 16,028,199 weekly downloads. As such, postcss-modules-extract-imports popularity was classified as popular.
We found that postcss-modules-extract-imports demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
The MCP community is launching an official registry to standardize AI tool discovery and let agents dynamically find and install MCP servers.
Research
Security News
Socket uncovers an npm Trojan stealing crypto wallets and BullX credentials via obfuscated code and Telegram exfiltration.
Research
Security News
Malicious npm packages posing as developer tools target macOS Cursor IDE users, stealing credentials and modifying files to gain persistent backdoor access.