initial commit
This commit is contained in:
67
node_modules/stylehacks/dist/index.js
generated
vendored
Normal file
67
node_modules/stylehacks/dist/index.js
generated
vendored
Normal file
@@ -0,0 +1,67 @@
|
||||
'use strict';
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
||||
var _postcss = require('postcss');
|
||||
|
||||
var _postcss2 = _interopRequireDefault(_postcss);
|
||||
|
||||
var _browserslist = require('browserslist');
|
||||
|
||||
var _browserslist2 = _interopRequireDefault(_browserslist);
|
||||
|
||||
var _plugins = require('./plugins');
|
||||
|
||||
var _plugins2 = _interopRequireDefault(_plugins);
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||||
|
||||
const stylehacks = _postcss2.default.plugin('stylehacks', (opts = {}) => {
|
||||
return (css, result) => {
|
||||
const resultOpts = result.opts || {};
|
||||
const browsers = (0, _browserslist2.default)(null, {
|
||||
stats: resultOpts.stats,
|
||||
path: __dirname,
|
||||
env: resultOpts.env
|
||||
});
|
||||
const processors = _plugins2.default.reduce((list, Plugin) => {
|
||||
const hack = new Plugin(result);
|
||||
const applied = browsers.some(browser => {
|
||||
return hack.targets.some(target => browser === target);
|
||||
});
|
||||
|
||||
if (applied) {
|
||||
return list;
|
||||
}
|
||||
|
||||
return [...list, hack];
|
||||
}, []);
|
||||
|
||||
css.walk(node => {
|
||||
processors.forEach(proc => {
|
||||
if (!~proc.nodeTypes.indexOf(node.type)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (opts.lint) {
|
||||
return proc.detectAndWarn(node);
|
||||
}
|
||||
|
||||
return proc.detectAndResolve(node);
|
||||
});
|
||||
});
|
||||
};
|
||||
});
|
||||
|
||||
stylehacks.detect = node => {
|
||||
return _plugins2.default.some(Plugin => {
|
||||
const hack = new Plugin();
|
||||
|
||||
return hack.any(node);
|
||||
});
|
||||
};
|
||||
|
||||
exports.default = stylehacks;
|
||||
module.exports = exports['default'];
|
||||
Reference in New Issue
Block a user