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-merge-rules/src/index.js | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) (limited to 'node_modules/postcss-merge-rules/src/index.js') diff --git a/node_modules/postcss-merge-rules/src/index.js b/node_modules/postcss-merge-rules/src/index.js index fcabadd5..686f880d 100644 --- a/node_modules/postcss-merge-rules/src/index.js +++ b/node_modules/postcss-merge-rules/src/index.js @@ -1,4 +1,5 @@ 'use strict'; +const { dirname } = require('path'); const browserslist = require('browserslist'); const { sameParent } = require('cssnano-utils'); const { @@ -406,21 +407,31 @@ function selectorMerger(browsers, compatibilityCache) { cache = partialMerge(cache, rule); }; } + +/** + * @typedef {{ overrideBrowserslist?: string | string[] }} AutoprefixerOptions + * @typedef {Pick} BrowserslistOptions + * @typedef {AutoprefixerOptions & BrowserslistOptions} Options + */ + /** - * @type {import('postcss').PluginCreator} + * @type {import('postcss').PluginCreator} + * @param {Options} opts * @return {import('postcss').Plugin} */ -function pluginCreator() { +function pluginCreator(opts = {}) { return { postcssPlugin: 'postcss-merge-rules', + /** + * @param {import('postcss').Result & {opts: BrowserslistOptions & {file?: string}}} result + */ prepare(result) { - /** @type {typeof result.opts & browserslist.Options} */ - const resultOpts = result.opts || {}; - const browsers = browserslist(null, { - stats: resultOpts.stats, - path: __dirname, - env: resultOpts.env, + const { stats, env, from, file } = result.opts || {}; + const browsers = browserslist(opts.overrideBrowserslist, { + stats: opts.stats || stats, + path: opts.path || dirname(from || file || __filename), + env: opts.env || env, }); const compatibilityCache = new Map(); -- cgit v1.2.3