1
1
mirror of https://github.com/primer/css.git synced 2024-09-17 11:37:23 +03:00
css/postcss.config.cjs
Katie Langerman 352ed7b755
Add new PostCSS fallback config (#2457)
* add new fallback config

* Create swift-moles-jump.md
2023-06-09 11:13:04 -07:00

50 lines
1.5 KiB
JavaScript

const autoprefixer = require('autoprefixer')
const sass = require('@csstools/postcss-sass')
const scss = require('postcss-scss')
const scssImport = require('postcss-import')
const { join } = require('path')
const path = require('path')
const fs = require('fs')
module.exports = {
map: {
sourcesContent: false,
annotation: true
},
customSyntax: scss,
parser: scss,
plugins: [
scssImport,
sass({
includePaths: [join(__dirname, 'node_modules')],
outputStyle: process.env.CSS_MINIFY === '0' ? 'expanded' : 'compressed'
}),
autoprefixer,
require('postcss-custom-properties-fallback')({
importFrom: [
() => {
const primitiveFallbacks = [
'color-fallbacks.json',
'base/size/size.json',
'base/typography/typography.json',
'functional/size/border.json',
'functional/size/breakpoints.json',
'functional/size/size-coarse.json',
'functional/size/size-fine.json',
'functional/size/size.json',
'functional/size/viewport.json',
'functional/typography/typography.json',
]
let customProperties = {}
for (const filePath of primitiveFallbacks) {
const fileData = fs.readFileSync(path.join(__dirname, './node_modules/@primer/primitives/tokens-next-private/fallbacks/', filePath), 'utf8')
customProperties = {...customProperties, ...JSON.parse(fileData)}
}
return { customProperties: customProperties };
}
]
}),
]
}