npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

postcss-simple-import

v3.0.0

Published

Consume @import in css recursively

Downloads

7

Readme

postcss-simple-import

version status coverage dependencies devDependencies node

Consume @import in css recursively.

  • @import node-style modules
  • Resolve the module entry according to the style field of package.json rather than main
  • Files are imported only once

Options

atRule

Specify the name of at-rules to be processed.

Type: String

Default: import

importer

Specify how to load files when processing @import.

Type: Function

Signature: importer(url, from, opts)

  • url: @import "url";
  • from: the absolute path of the current css file
  • opts: the options object

opts.postcssOpts is accessible.

Should return an array of objects (or promises) with the following fields:

  • from: String required the resolved file path
  • source: String optional the contents of the file

If undefined returned, the importer will be ignored.

cache

File contents cache.

readFile

Specify how to read file contents.

Type: Function

Signature: readFile(filename)

Should return a string (or promise) of contents of the file.

glob

Specify how to resolve globs.

It should have glob.hasMagic(url) to check whether globs exist.

Type: Function

Receives the glob string, and an object { cwd: dirname_of_the_processed_file }.

Should return an array (or a promise) of file paths.

Type: true A promisified version of glob is used.

resolve

Specify how to resolve file paths.

Type: Function

Receives the import string, and an object { basedir: dirname_of_the_processed_file }.

Should return an absolute file path (or promise).

Type: Object

Passed to custom-resolve to create the resolve function.

var resolver = require('custom-resolve')
opts.resolve = promisify(resolver(mix({
  packageEntry: 'style',
  extensions: '.css',
  symlinks: true, // resolve all soft links to their real paths
}, opts.resolve)))

parse

Specify how to build an AST from the source.

Type: Function

Signature: parse(source, from)

Should return the AST object (or promise).

onImport

Deprecated

Use the imports event instead.

Type: Function

Signature: onImport(from, imports, postcssOpts)

  • from: the css file
  • imports: files directly imported by from
  • postcssOpts: postcssOpts

on

Event listeners.

Type: Object

import

Fired right after file path resolved, but before compilation.

Listener signature: fn(importedFile, from, opts)

opts.postcssOpts is accessible.

imports

Fired right after compilation.

Listener signature: fn(imports, from, opts)

  • imports: Array

opts.postcssOpts is accessible.

postcssOpts

Type: Object

Options passed to process(source, postcssOpts)