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-reduce-initial/src/index.js | 26 ++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) (limited to 'node_modules/postcss-reduce-initial/src/index.js') diff --git a/node_modules/postcss-reduce-initial/src/index.js b/node_modules/postcss-reduce-initial/src/index.js index 5432f7fe..90d18a71 100644 --- a/node_modules/postcss-reduce-initial/src/index.js +++ b/node_modules/postcss-reduce-initial/src/index.js @@ -1,14 +1,21 @@ 'use strict'; +const { dirname } = require('path'); const browserslist = require('browserslist'); const { isSupported } = require('caniuse-api'); const fromInitial = require('./data/fromInitial.json'); const toInitial = require('./data/toInitial.json'); +const ignoreProps = require('./lib/ignoreProps.js'); const initial = 'initial'; // In most of the browser including chrome the initial for `writing-mode` is not `horizontal-tb`. Ref https://github.com/cssnano/cssnano/pull/905 -const defaultIgnoreProps = ['writing-mode', 'transform-box']; -/** @typedef {{ignore?: string[]}} Options */ +const defaultIgnoreProps = ignoreProps; + +/** + * @typedef {{ overrideBrowserslist?: string | string[] }} AutoprefixerOptions + * @typedef {Pick} BrowserslistOptions + * @typedef {{ignore?: string[]} & AutoprefixerOptions & BrowserslistOptions} Options + */ /** * @type {import('postcss').PluginCreator} @@ -18,13 +25,16 @@ const defaultIgnoreProps = ['writing-mode', 'transform-box']; function pluginCreator(options = {}) { return { postcssPlugin: 'postcss-reduce-initial', - /** @param {import('postcss').Result & {opts: browserslist.Options & {ignore?: string[]}}} result */ + + /** + * @param {import('postcss').Result & {opts: BrowserslistOptions & {file?: string}}} result + */ prepare(result) { - 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(options.overrideBrowserslist, { + stats: options.stats || stats, + path: options.path || dirname(from || file || __filename), + env: options.env || env, }); const initialSupport = isSupported('css-initial-value', browsers); -- cgit v1.2.3