diff options
author | Bardi Harborow <bardi@bardiharborow.com> | 2017-04-19 14:59:12 +0300 |
---|---|---|
committer | Bardi Harborow <bardi@bardiharborow.com> | 2017-04-20 07:31:22 +0300 |
commit | b4ac48fdec7637c0c7c69f9d3ff9fc5d21d23676 (patch) | |
tree | 78cbec7b0790da3038c657e2943baada99819497 /build/postcss.config.js | |
parent | 9af6bf8f7a3e3af5a001aeeeda7dc38794df3a71 (diff) |
Build system overhaul.
Diffstat (limited to 'build/postcss.config.js')
-rw-r--r-- | build/postcss.config.js | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/build/postcss.config.js b/build/postcss.config.js new file mode 100644 index 0000000000..803078a5f8 --- /dev/null +++ b/build/postcss.config.js @@ -0,0 +1,41 @@ +module.exports = (ctx) => ({ + map: ctx.file.dirname.startsWith('docs') ? false : { + inline: false, + annotation: true, + sourcesContent: true + }, + plugins: { + autoprefixer: { + browsers: [ + // + // Official browser support policy: + // https://v4-alpha.getbootstrap.com/getting-started/browsers-devices/#supported-browsers + // + 'Chrome >= 35', // Exact version number here is kinda arbitrary + // Rather than using Autoprefixer's native "Firefox ESR" version specifier string, + // we deliberately hardcode the number. This is to avoid unwittingly severely breaking the previous ESR in the event that: + // (a) we happen to ship a new Bootstrap release soon after the release of a new ESR, + // such that folks haven't yet had a reasonable amount of time to upgrade; and + // (b) the new ESR has unprefixed CSS properties/values whose absence would severely break webpages + // (e.g. `box-sizing`, as opposed to `background: linear-gradient(...)`). + // Since they've been unprefixed, Autoprefixer will stop prefixing them, + // thus causing them to not work in the previous ESR (where the prefixes were required). + 'Firefox >= 38', // Current Firefox Extended Support Release (ESR); https://www.mozilla.org/en-US/firefox/organizations/faq/ + // Note: Edge versions in Autoprefixer & Can I Use refer to the EdgeHTML rendering engine version, + // NOT the Edge app version shown in Edge's "About" screen. + // For example, at the time of writing, Edge 20 on an up-to-date system uses EdgeHTML 12. + // See also https://github.com/Fyrd/caniuse/issues/1928 + 'Edge >= 12', + 'Explorer >= 10', + // Out of leniency, we prefix these 1 version further back than the official policy. + 'iOS >= 8', + 'Safari >= 8', + // The following remain NOT officially supported, but we're lenient and include their prefixes to avoid severely breaking in them. + 'Android 2.3', + 'Android >= 4', + 'Opera >= 12' + ] + }, + 'postcss-flexbugs-fixes': {} + } +}) |