Giter Club home page Giter Club logo

postcss-partial-import's Introduction

Partial Import PostCSS Logo

NPM Version Build Status Licensing Changelog Gitter Chat

Partial Import lets you use sugary @import statements in CSS, including glob-like and Sass-like behavior. It even lets you generates imports as a scaffolding tool.

/* before: style.css */

@import "foo/bar";

/* before: foo/bar.css */

.example-1 {
    background-color: #fafafa;
}

/* after: style.css */

.example-1 {
    background-color: #fafafa;
}

Options

root

Type: String
Default: from or process.cwd()

The root where paths are resolved. This should be the directory containing node_modules.

path

Type: String | Array
Default: []

A path or paths used to locate files.

plugins

Type: Array
Default: undefined

An array of plugins to be applied to imported file.

onImport

Type: Function
Default: null

The function called after the import process, receiving an array of imported files.

resolve

Type: Function
Default: null

A custom resolver, receiving the id, basedir, and importOptions of an import.

load

Type: Function
Default: null

A custom loader, receiving the filename, importOptions, and content or promised content.

skipDuplicates

Type: Boolean
Default: true

Whether similar files (based on the same content) will be skipped.

prefix

Type: String
Default: ""

Leading characters conditionally prepended to imports which are not found without them. For Sass-like, use "_".

glob

Type: Boolean | Object
Default: true

Whether glob-like behavior should be supported by imports. An object passed here will be forwarded to glob in order to change pattern matching behavior.

touch

Type: Boolean
Default: false

Whether imports should be created as files if they do not already exist.

extension

Type: String
Default: .css

A file extension conditionally appended to touched imports which do not specify an extension.

Usage

Add Partial Import to your build tool:

npm install postcss-partial-import --save-dev

Node

require('postcss-partial-import').process(YOUR_CSS, { /* options */ });

PostCSS

Add PostCSS to your build tool:

npm install postcss --save-dev

Load Partial Import as a PostCSS plugin:

postcss([
	require('postcss-partial-import')({ /* options */ })
]).process(YOUR_CSS, /* options */);

Gulp

Add Gulp PostCSS to your build tool:

npm install gulp-postcss --save-dev

Enable Partial Import within your Gulpfile:

var postcss = require('gulp-postcss');

gulp.task('css', function () {
	return gulp.src('./src/*.css').pipe(
		postcss([
			require('postcss-partial-import')({ /* options */ })
		])
	).pipe(
		gulp.dest('.')
	);
});

Grunt

Add Grunt PostCSS to your build tool:

npm install grunt-postcss --save-dev

Enable Partial Import within your Gruntfile:

grunt.loadNpmTasks('grunt-postcss');

grunt.initConfig({
	postcss: {
		options: {
			use: [
				require('postcss-partial-import')({ /* options */ })
			]
		},
		dist: {
			src: '*.css'
		}
	}
});

postcss-partial-import's People

Contributors

jonathantneal avatar andyjansson avatar trysound avatar cookpete avatar snuggs avatar meastes avatar

Stargazers

Roman avatar

Watchers

Karol Fabjańczuk avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.