forked from rDrama/rDrama
69 lines
1.6 KiB
JavaScript
69 lines
1.6 KiB
JavaScript
|
import fs from 'fs'
|
||
|
import postcss from 'postcss'
|
||
|
import tailwind from '..'
|
||
|
|
||
|
function build({ from, to, config }) {
|
||
|
return new Promise((resolve, reject) => {
|
||
|
console.log(`Processing ./${from}...`)
|
||
|
|
||
|
fs.readFile(`./${from}`, (err, css) => {
|
||
|
if (err) throw err
|
||
|
|
||
|
return postcss([tailwind(config)])
|
||
|
.process(css, {
|
||
|
from: undefined,
|
||
|
})
|
||
|
.then((result) => {
|
||
|
fs.writeFileSync(`./${to}`, result.css)
|
||
|
return result
|
||
|
})
|
||
|
.then(resolve)
|
||
|
.catch((error) => {
|
||
|
console.log(error)
|
||
|
reject()
|
||
|
})
|
||
|
})
|
||
|
})
|
||
|
}
|
||
|
|
||
|
console.info('\nRebuilding fixtures...\n')
|
||
|
|
||
|
Promise.all([
|
||
|
build({
|
||
|
from: 'tests/fixtures/tailwind-input.css',
|
||
|
to: 'tests/fixtures/tailwind-output.css',
|
||
|
config: {},
|
||
|
}),
|
||
|
build({
|
||
|
from: 'tests/fixtures/tailwind-input.css',
|
||
|
to: 'tests/fixtures/tailwind-output-important.css',
|
||
|
config: { important: true },
|
||
|
}),
|
||
|
build({
|
||
|
from: 'tests/fixtures/tailwind-input.css',
|
||
|
to: 'tests/fixtures/tailwind-output-no-color-opacity.css',
|
||
|
config: {
|
||
|
corePlugins: {
|
||
|
textOpacity: false,
|
||
|
backgroundOpacity: false,
|
||
|
borderOpacity: false,
|
||
|
placeholderOpacity: false,
|
||
|
divideOpacity: false,
|
||
|
},
|
||
|
},
|
||
|
}),
|
||
|
build({
|
||
|
from: 'tests/fixtures/tailwind-input.css',
|
||
|
to: 'tests/fixtures/tailwind-output-flagged.css',
|
||
|
config: {
|
||
|
future: 'all',
|
||
|
experimental: 'all',
|
||
|
},
|
||
|
}),
|
||
|
]).then(() => {
|
||
|
console.log('\nFinished rebuilding fixtures.')
|
||
|
console.log(
|
||
|
'\nPlease triple check that the fixture output matches what you expect before committing this change.'
|
||
|
)
|
||
|
})
|