From 06823fbf1c2e763a5bf76c3990ca98fbbcd98691 Mon Sep 17 00:00:00 2001 From: littleblack111 Date: Tue, 14 May 2024 14:05:49 +0800 Subject: updated node_modules --- node_modules/postcss-minify-params/src/index.js | 38 ++++++++++++++++++------- 1 file changed, 27 insertions(+), 11 deletions(-) (limited to 'node_modules/postcss-minify-params/src') diff --git a/node_modules/postcss-minify-params/src/index.js b/node_modules/postcss-minify-params/src/index.js index c2cbe320..df65593e 100644 --- a/node_modules/postcss-minify-params/src/index.js +++ b/node_modules/postcss-minify-params/src/index.js @@ -1,4 +1,5 @@ 'use strict'; +const { dirname } = require('path'); const browserslist = require('browserslist'); const valueParser = require('postcss-value-parser'); const { getArguments } = require('cssnano-utils'); @@ -133,23 +134,38 @@ function transform(legacy, rule) { const allBugBrowers = new Set(['ie 10', 'ie 11']); /** - * @type {import('postcss').PluginCreator} - * @param {browserslist.Options} options + * @typedef {{ overrideBrowserslist?: string | string[] }} AutoprefixerOptions + * @typedef {Pick} BrowserslistOptions + * @typedef {AutoprefixerOptions & BrowserslistOptions} Options + */ + +/** + * @type {import('postcss').PluginCreator} + * @param {Options} options * @return {import('postcss').Plugin} */ function pluginCreator(options = {}) { - const browsers = browserslist(null, { - stats: options.stats, - path: __dirname, - env: options.env, - }); - - const hasAllBug = browsers.some((browser) => allBugBrowers.has(browser)); return { postcssPlugin: 'postcss-minify-params', - OnceExit(css) { - css.walkAtRules((rule) => transform(hasAllBug, rule)); + /** + * @param {import('postcss').Result & {opts: BrowserslistOptions & {file?: string}}} result + */ + prepare(result) { + const { stats, env, from, file } = result.opts || {}; + const browsers = browserslist(options.overrideBrowserslist, { + stats: options.stats || stats, + path: options.path || dirname(from || file || __filename), + env: options.env || env, + }); + + const hasAllBug = browsers.some((browser) => allBugBrowers.has(browser)); + + return { + OnceExit(css) { + css.walkAtRules((rule) => transform(hasAllBug, rule)); + }, + }; }, }; } -- cgit v1.2.3