tailwindcss/src/lib/substituteScreenAtRules.js

20 lines
600 B
JavaScript
Raw Normal View History

import { normalizeScreens } from '../util/normalizeScreens'
2017-10-06 10:09:37 -04:00
import buildMediaQuery from '../util/buildMediaQuery'
2017-10-05 20:20:43 -04:00
export default function ({ tailwindConfig: { theme } }) {
2020-10-16 13:30:06 -04:00
return function (css) {
css.walkAtRules('screen', (atRule) => {
let screen = atRule.params
let screens = normalizeScreens(theme.screens)
let screenDefinition = screens.find(({ name }) => name === screen)
2017-10-05 20:20:43 -04:00
if (!screenDefinition) {
throw atRule.error(`No \`${screen}\` screen found.`)
2017-10-05 20:20:43 -04:00
}
atRule.name = 'media'
atRule.params = buildMediaQuery(screenDefinition)
2017-10-05 20:20:43 -04:00
})
}
}