UNPKG

react-app-rewire-wolox

Version:

Add CSS Modules + SASS and Babel config Webpack config to a [`react-app-rewired`](https://github.com/timarney/react-app-rewired) config.

50 lines (38 loc) 1.67 kB
"use strict"; var _path = require("path"); var _path2 = _interopRequireDefault(_path); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var ruleChildren = function ruleChildren(loader) { return loader.use || loader.oneOf || Array.isArray(loader.loader) && loader.loader || []; }; var findIndexAndRules = function findIndexAndRules(rulesSource, ruleMatcher) { var result = void 0; var rules = Array.isArray(rulesSource) ? rulesSource : ruleChildren(rulesSource); rules.some(function (rule, index) { return result = ruleMatcher(rule) ? { index: index, rules: rules } : findIndexAndRules(ruleChildren(rule), ruleMatcher); }); return result; }; exports.findRule = function (rulesSource, ruleMatcher) { var _findIndexAndRules = findIndexAndRules(rulesSource, ruleMatcher), index = _findIndexAndRules.index, rules = _findIndexAndRules.rules; return rules[index]; }; exports.createLoaderMatcher = function (loader) { return function (rule) { return rule.loader && rule.loader.indexOf("" + _path2.default.sep + loader + _path2.default.sep) !== -1; }; }; exports.addAfterRule = function (rulesSource, ruleMatcher, value) { var _findIndexAndRules2 = findIndexAndRules(rulesSource, ruleMatcher), index = _findIndexAndRules2.index, rules = _findIndexAndRules2.rules; rules.splice(index + 1, 0, value); }; exports.addBeforeRule = function (rulesSource, ruleMatcher, value) { var _findIndexAndRules3 = findIndexAndRules(rulesSource, ruleMatcher), index = _findIndexAndRules3.index, rules = _findIndexAndRules3.rules; rules.splice(index, 0, value); };