57 lines
999 B
Plaintext
57 lines
999 B
Plaintext
// @ts-check
|
|
|
|
import {
|
|
// @ts-ignore
|
|
lazyPostcss,
|
|
|
|
// @ts-ignore
|
|
lazyPostcssImport,
|
|
|
|
// @ts-ignore
|
|
lazyCssnano,
|
|
|
|
// @ts-ignore
|
|
lazyAutoprefixer,
|
|
} from '../../../peers/index.js'
|
|
|
|
/**
|
|
* @returns {import('postcss')}
|
|
*/
|
|
export function loadPostcss() {
|
|
// Try to load a local `postcss` version first
|
|
try {
|
|
return require('postcss')
|
|
} catch {}
|
|
|
|
return lazyPostcss()
|
|
}
|
|
|
|
export function loadPostcssImport() {
|
|
// Try to load a local `postcss-import` version first
|
|
try {
|
|
return require('postcss-import')
|
|
} catch {}
|
|
|
|
return lazyPostcssImport()
|
|
}
|
|
|
|
export function loadCssNano() {
|
|
let options = { preset: ['default', { cssDeclarationSorter: false }] }
|
|
|
|
// Try to load a local `cssnano` version first
|
|
try {
|
|
return require('cssnano')
|
|
} catch {}
|
|
|
|
return lazyCssnano()(options)
|
|
}
|
|
|
|
export function loadAutoprefixer() {
|
|
// Try to load a local `autoprefixer` version first
|
|
try {
|
|
return require('autoprefixer')
|
|
} catch {}
|
|
|
|
return lazyAutoprefixer()
|
|
}
|