aboutsummaryrefslogtreecommitdiff
path: root/node_modules/postcss-loader/lib/index.js
diff options
context:
space:
mode:
authorruki <waruqi@gmail.com>2018-11-08 00:43:05 +0800
committerruki <waruqi@gmail.com>2018-11-07 22:18:30 +0800
commit89e95b3f143682ed9a006991bacf45c9dcba4818 (patch)
tree4f44cf41b828577d583890bdd5a1c31e8491a6ba /node_modules/postcss-loader/lib/index.js
parentaa7f0199255277949790b41c56e8ec97dd4f0da4 (diff)
downloadxmake-docs-vuepress.tar.gz
xmake-docs-vuepress.zip
remove node_modulesvuepress
Diffstat (limited to 'node_modules/postcss-loader/lib/index.js')
-rw-r--r--node_modules/postcss-loader/lib/index.js196
1 files changed, 0 insertions, 196 deletions
diff --git a/node_modules/postcss-loader/lib/index.js b/node_modules/postcss-loader/lib/index.js
deleted file mode 100644
index 623ff184..00000000
--- a/node_modules/postcss-loader/lib/index.js
+++ /dev/null
@@ -1,196 +0,0 @@
-'use strict'
-
-const path = require('path')
-
-const loaderUtils = require('loader-utils')
-
-const parseOptions = require('./options')
-const validateOptions = require('schema-utils')
-
-const postcss = require('postcss')
-const postcssrc = require('postcss-load-config')
-
-const SyntaxError = require('./Error')
-
-/**
- * PostCSS Loader
- *
- * > Loads && processes CSS with [PostCSS](https://github.com/postcss/postcss)
- *
- * @author Andrey Sitnik (@ai) <andrey@sitnik.ru>
- *
- * @license MIT
- * @version 2.0.0
- *
- * @requires path
- *
- * @requires loader-utils
- * @requires schema-utils
- *
- * @requires postcss
- * @requires postcss-load-config
- *
- * @requires Error
- *
- * @method loader
- *
- * @param {String} css Source
- * @param {Object} map Source Map
- *
- * @return {cb} cb Result
- */
-module.exports = function loader (css, map, meta) {
- const options = Object.assign({}, loaderUtils.getOptions(this))
-
- validateOptions(require('./options.json'), options, 'PostCSS Loader')
-
- const cb = this.async()
- const file = this.resourcePath
-
- const sourceMap = options.sourceMap
-
- Promise.resolve().then(() => {
- const length = Object.keys(options)
- .filter((option) => {
- switch (option) {
- // case 'exec':
- case 'ident':
- case 'config':
- case 'sourceMap':
- return
- default:
- return option
- }
- })
- .length
-
- if (length) {
- return parseOptions.call(this, options)
- }
-
- const rc = {
- path: path.dirname(file),
- ctx: {
- file: {
- extname: path.extname(file),
- dirname: path.dirname(file),
- basename: path.basename(file)
- },
- options: {}
- }
- }
-
- if (options.config) {
- if (options.config.path) {
- rc.path = path.resolve(options.config.path)
- }
-
- if (options.config.ctx) {
- rc.ctx.options = options.config.ctx
- }
- }
-
- rc.ctx.webpack = this;
-
- return postcssrc(rc.ctx, rc.path)
- }).then((config) => {
- if (!config) config = {}
-
- if (config.file) this.addDependency(config.file)
-
- // Disable override `to` option from `postcss.config.js`
- if (config.options.to) delete config.options.to
- // Disable override `from` option from `postcss.config.js`
- if (config.options.from) delete config.options.from
-
- let plugins = config.plugins || []
- let options = Object.assign({
- from: file,
- map: sourceMap
- ? sourceMap === 'inline'
- ? { inline: true, annotation: false }
- : { inline: false, annotation: false }
- : false
- }, config.options)
-
- // Loader Exec (Deprecated)
- // https://webpack.js.org/api/loaders/#deprecated-context-properties
- if (options.parser === 'postcss-js') {
- css = this.exec(css, this.resource)
- }
-
- if (typeof options.parser === 'string') {
- options.parser = require(options.parser)
- }
-
- if (typeof options.syntax === 'string') {
- options.syntax = require(options.syntax)
- }
-
- if (typeof options.stringifier === 'string') {
- options.stringifier = require(options.stringifier)
- }
-
- // Loader API Exec (Deprecated)
- // https://webpack.js.org/api/loaders/#deprecated-context-properties
- if (config.exec) {
- css = this.exec(css, this.resource)
- }
-
- if (sourceMap && typeof map === 'string') map = JSON.parse(map)
- if (sourceMap && map) options.map.prev = map
-
- return postcss(plugins)
- .process(css, options)
- .then((result) => {
- result.warnings().forEach((msg) => this.emitWarning(msg.toString()))
-
- result.messages.forEach((msg) => {
- if (msg.type === 'dependency') this.addDependency(msg.file)
- })
-
- css = result.css
- map = result.map ? result.map.toJSON() : null
-
- if (map) {
- map.file = path.resolve(map.file)
- map.sources = map.sources.map((src) => path.resolve(src))
- }
-
- if (!meta) meta = {}
-
- meta.ast = { 'type': 'postcss', root: result.root }
- meta.messages = result.messages
-
- if (this.loaderIndex === 0) {
- /**
- * @memberof loader
- * @callback cb
- *
- * @param {Object} null Error
- * @param {String} result Result (JS Module)
- * @param {Object} map Source Map
- */
- cb(null, `module.exports = ${JSON.stringify(css)}`, map)
-
- return null
- }
-
- /**
- * @memberof loader
- * @callback cb
- *
- * @param {Object} null Error
- * @param {String} css Result (Raw Module)
- * @param {Object} map Source Map
- */
- cb(null, css, map, meta)
-
- return null
- })
- }).catch((err) => {
- if (err.file) this.addDependency(err.file)
-
- return err.name === 'CssSyntaxError' ? cb(new SyntaxError(err)) : cb(err)
- })
-}