UNPKG

spinjs

Version:

<p align="center"><a href="#"><img width="150" src="https://rawgit.com/sysgears/spin.js/master/logo.svg"></a></p>

60 lines 2.68 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var requireModule_1 = require("../requireModule"); var CssProcessorPlugin = (function () { function CssProcessorPlugin() { } CssProcessorPlugin.prototype.configure = function (builder, spin) { var stack = builder.stack; var dev = spin.dev; if (stack.hasAll('webpack')) { var createRule = void 0; var rules = []; if (stack.hasAny('server')) { createRule = function (prep, ext) { return ({ test: new RegExp("." + ext + "$"), use: dev ? [ { loader: 'isomorphic-style-loader' }, { loader: 'css-loader', options: { sourceMap: true } }, { loader: 'postcss-loader', options: { sourceMap: true } }, { loader: prep + "-loader", options: { sourceMap: true } } ] : [{ loader: 'ignore-loader' }], }); }; } else if (stack.hasAny('web')) { var ExtractTextPlugin_1; if (!dev) { ExtractTextPlugin_1 = requireModule_1.default('extract-text-webpack-plugin'); builder.config.plugins.push(new ExtractTextPlugin_1({ filename: '[name].[contenthash].css', allChunks: true })); } createRule = function (prep, ext) { return ({ test: new RegExp("." + ext + "$"), use: dev ? [ { loader: 'style-loader' }, { loader: 'css-loader', options: { sourceMap: true, importLoaders: 1 } }, { loader: 'postcss-loader', options: { sourceMap: true } }, { loader: prep + "-loader", options: { sourceMap: true } }, ] : ExtractTextPlugin_1.extract({ fallback: 'style-loader', use: ['css-loader', 'postcss-loader', prep + "-loader"], }), }); }; } if (createRule && stack.hasAny('sass')) { rules.push(createRule('sass', 'scss')); } if (createRule && stack.hasAny('less')) { rules.push(createRule('less', 'less')); } builder.config = spin.merge(builder.config, { module: { rules: rules } }); } }; return CssProcessorPlugin; }()); exports.default = CssProcessorPlugin; //# sourceMappingURL=CssProcessorPlugin.js.map