react-static
Version:
A progressive static site generator for React
68 lines (56 loc) • 5.15 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = _default;
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
var _autoprefixer = _interopRequireDefault(require("autoprefixer"));
var _extractCssChunksWebpackPlugin = _interopRequireDefault(require("extract-css-chunks-webpack-plugin"));
var _postcssFlexbugsFixes = _interopRequireDefault(require("postcss-flexbugs-fixes"));
function initCSSLoader() {
var cssLoader = [{
loader: 'css-loader',
options: {
importLoaders: 1,
sourceMap: false
}
}, {
loader: 'postcss-loader',
options: {
// Necessary for external CSS imports to work
// https://github.com/facebookincubator/create-react-app/issues/2677
sourceMap: true,
ident: 'postcss',
plugins: function plugins() {
return [_postcssFlexbugsFixes["default"], (0, _autoprefixer["default"])({
flexbox: 'no-2009' // I'd opt in for this - safari 9 & IE 10.
})];
}
}
}];
return cssLoader;
}
function _default(_ref) {
var stage = _ref.stage,
isNode = _ref.isNode;
var cssLoader = initCSSLoader();
if (stage === 'node' || isNode) {
return {
test: /\.css$/,
loader: cssLoader
};
}
cssLoader = [{
loader: _extractCssChunksWebpackPlugin["default"].loader,
options: {
hot: true,
hmr: true
}
}].concat((0, _toConsumableArray2["default"])(cssLoader)); // seeing as it's HMR, why not :)
return {
test: /\.css$/,
loader: cssLoader
};
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zdGF0aWMvd2VicGFjay9ydWxlcy9jc3NMb2FkZXIuanMiXSwibmFtZXMiOlsiaW5pdENTU0xvYWRlciIsImNzc0xvYWRlciIsImxvYWRlciIsIm9wdGlvbnMiLCJpbXBvcnRMb2FkZXJzIiwic291cmNlTWFwIiwiaWRlbnQiLCJwbHVnaW5zIiwicG9zdGNzc0ZsZXhidWdzRml4ZXMiLCJmbGV4Ym94Iiwic3RhZ2UiLCJpc05vZGUiLCJ0ZXN0IiwiRXh0cmFjdENzc0NodW5rcyIsImhvdCIsImhtciJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFFQSxTQUFTQSxhQUFULEdBQXlCO0FBQ3ZCLE1BQU1DLFNBQVMsR0FBRyxDQUNoQjtBQUNFQyxJQUFBQSxNQUFNLEVBQUUsWUFEVjtBQUVFQyxJQUFBQSxPQUFPLEVBQUU7QUFDUEMsTUFBQUEsYUFBYSxFQUFFLENBRFI7QUFFUEMsTUFBQUEsU0FBUyxFQUFFO0FBRko7QUFGWCxHQURnQixFQVFoQjtBQUNFSCxJQUFBQSxNQUFNLEVBQUUsZ0JBRFY7QUFFRUMsSUFBQUEsT0FBTyxFQUFFO0FBQ1A7QUFDQTtBQUNBRSxNQUFBQSxTQUFTLEVBQUUsSUFISjtBQUlQQyxNQUFBQSxLQUFLLEVBQUUsU0FKQTtBQUtQQyxNQUFBQSxPQUFPLEVBQUU7QUFBQSxlQUFNLENBQ2JDLGdDQURhLEVBRWIsOEJBQWE7QUFDWEMsVUFBQUEsT0FBTyxFQUFFLFNBREUsQ0FDUzs7QUFEVCxTQUFiLENBRmEsQ0FBTjtBQUFBO0FBTEY7QUFGWCxHQVJnQixDQUFsQjtBQXdCQSxTQUFPUixTQUFQO0FBQ0Q7O0FBRWMsd0JBQTRCO0FBQUEsTUFBakJTLEtBQWlCLFFBQWpCQSxLQUFpQjtBQUFBLE1BQVZDLE1BQVUsUUFBVkEsTUFBVTtBQUN6QyxNQUFJVixTQUFTLEdBQUdELGFBQWEsRUFBN0I7O0FBQ0EsTUFBSVUsS0FBSyxLQUFLLE1BQVYsSUFBb0JDLE1BQXhCLEVBQWdDO0FBQzlCLFdBQU87QUFDTEMsTUFBQUEsSUFBSSxFQUFFLFFBREQ7QUFFTFYsTUFBQUEsTUFBTSxFQUFFRDtBQUZILEtBQVA7QUFJRDs7QUFFREEsRUFBQUEsU0FBUyxJQUNQO0FBQ0VDLElBQUFBLE1BQU0sRUFBRVcsMENBQWlCWCxNQUQzQjtBQUVFQyxJQUFBQSxPQUFPLEVBQUU7QUFDUFcsTUFBQUEsR0FBRyxFQUFFLElBREU7QUFFUEMsTUFBQUEsR0FBRyxFQUFFO0FBRkU7QUFGWCxHQURPLDZDQVFKZCxTQVJJLEVBQVQsQ0FUeUMsQ0FrQnZDOztBQUVGLFNBQU87QUFDTFcsSUFBQUEsSUFBSSxFQUFFLFFBREQ7QUFFTFYsSUFBQUEsTUFBTSxFQUFFRDtBQUZILEdBQVA7QUFJRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhdXRvcHJlZml4ZXIgZnJvbSAnYXV0b3ByZWZpeGVyJ1xuaW1wb3J0IEV4dHJhY3RDc3NDaHVua3MgZnJvbSAnZXh0cmFjdC1jc3MtY2h1bmtzLXdlYnBhY2stcGx1Z2luJ1xuaW1wb3J0IHBvc3Rjc3NGbGV4YnVnc0ZpeGVzIGZyb20gJ3Bvc3Rjc3MtZmxleGJ1Z3MtZml4ZXMnXG5cbmZ1bmN0aW9uIGluaXRDU1NMb2FkZXIoKSB7XG4gIGNvbnN0IGNzc0xvYWRlciA9IFtcbiAgICB7XG4gICAgICBsb2FkZXI6ICdjc3MtbG9hZGVyJyxcbiAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgaW1wb3J0TG9hZGVyczogMSxcbiAgICAgICAgc291cmNlTWFwOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBsb2FkZXI6ICdwb3N0Y3NzLWxvYWRlcicsXG4gICAgICBvcHRpb25zOiB7XG4gICAgICAgIC8vIE5lY2Vzc2FyeSBmb3IgZXh0ZXJuYWwgQ1NTIGltcG9ydHMgdG8gd29ya1xuICAgICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2tpbmN1YmF0b3IvY3JlYXRlLXJlYWN0LWFwcC9pc3N1ZXMvMjY3N1xuICAgICAgICBzb3VyY2VNYXA6IHRydWUsXG4gICAgICAgIGlkZW50OiAncG9zdGNzcycsXG4gICAgICAgIHBsdWdpbnM6ICgpID0+IFtcbiAgICAgICAgICBwb3N0Y3NzRmxleGJ1Z3NGaXhlcyxcbiAgICAgICAgICBhdXRvcHJlZml4ZXIoe1xuICAgICAgICAgICAgZmxleGJveDogJ25vLTIwMDknLCAvLyBJJ2Qgb3B0IGluIGZvciB0aGlzIC0gc2FmYXJpIDkgJiBJRSAxMC5cbiAgICAgICAgICB9KSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgfSxcbiAgXVxuICByZXR1cm4gY3NzTG9hZGVyXG59XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uKHsgc3RhZ2UsIGlzTm9kZSB9KSB7XG4gIGxldCBjc3NMb2FkZXIgPSBpbml0Q1NTTG9hZGVyKClcbiAgaWYgKHN0YWdlID09PSAnbm9kZScgfHwgaXNOb2RlKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRlc3Q6IC9cXC5jc3MkLyxcbiAgICAgIGxvYWRlcjogY3NzTG9hZGVyLFxuICAgIH1cbiAgfVxuXG4gIGNzc0xvYWRlciA9IFtcbiAgICB7XG4gICAgICBsb2FkZXI6IEV4dHJhY3RDc3NDaHVua3MubG9hZGVyLFxuICAgICAgb3B0aW9uczoge1xuICAgICAgICBob3Q6IHRydWUsXG4gICAgICAgIGhtcjogdHJ1ZSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICAuLi5jc3NMb2FkZXIsXG4gIF0gLy8gc2VlaW5nIGFzIGl0J3MgSE1SLCB3aHkgbm90IDopXG5cbiAgcmV0dXJuIHtcbiAgICB0ZXN0OiAvXFwuY3NzJC8sXG4gICAgbG9hZGVyOiBjc3NMb2FkZXIsXG4gIH1cbn1cbiJdfQ==