UNPKG

unocss-preset-autoprefixer

Version:
42 lines (36 loc) 1.36 kB
'use strict'; const node_buffer = require('node:buffer'); const process = require('node:process'); const browserslist = require('browserslist'); const lightningcss = require('lightningcss'); function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e.default : e; } const process__default = /*#__PURE__*/_interopDefaultCompat(process); const browserslist__default = /*#__PURE__*/_interopDefaultCompat(browserslist); function autoprefixerPreset(queries = [ ">= 0.25%", "last 2 versions", "not dead", "not ie <= 11", "Android >= 4.0", "iOS >= 8" ]) { const targets = lightningcss.browserslistToTargets(browserslist__default(queries)); return { name: "unocss-preset-autoprefixer", postprocess: (util) => { if (process__default.argv0?.endsWith("Code Helper (Plugin)")) return; const entries = util.entries; const { code } = lightningcss.transformStyleAttribute({ code: node_buffer.Buffer.from(entries.filter((item) => !item[0].startsWith("--un")).map((x) => x.join(":")).join(";")), targets, minify: true }); util.entries = [ ...entries.filter((item) => item[0].startsWith("--un")), ...code.toString() ? code.toString().split(";").map((i) => i.split(":")) : [] ]; } }; } module.exports = autoprefixerPreset;