diff options
| author | littleblack111 <littleblack11111@gmail.com> | 2023-10-14 15:05:55 +0800 |
|---|---|---|
| committer | littleblack111 <littleblack11111@gmail.com> | 2023-10-14 15:05:55 +0800 |
| commit | c06f7ee0a40255214c477e13d9b956a7e07c2900 (patch) | |
| tree | f5982a568ef8fab865d0142e71c7494fea3e4c1b /node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values | |
| parent | 3fd9400d4dccc25aa29b5702216732e0b7542073 (diff) | |
postcss,(plugins): nanocss, postcss-preset-env
Diffstat (limited to 'node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values')
9 files changed, 261 insertions, 0 deletions
diff --git a/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/CHANGELOG.md b/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/CHANGELOG.md new file mode 100644 index 00000000..71c37160 --- /dev/null +++ b/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/CHANGELOG.md @@ -0,0 +1,68 @@ +# Changes to PostCSS Media Queries Aspect-Ratio Number Values + +### 2.0.3 + +_September 24, 2023_ + +- Updated [`@csstools/css-tokenizer`](https://github.com/csstools/postcss-plugins/tree/main/packages/css-tokenizer) to [`2.2.1`](https://github.com/csstools/postcss-plugins/tree/main/packages/css-tokenizer/CHANGELOG.md#221) (patch) +- Updated [`@csstools/css-parser-algorithms`](https://github.com/csstools/postcss-plugins/tree/main/packages/css-parser-algorithms) to [`2.3.2`](https://github.com/csstools/postcss-plugins/tree/main/packages/css-parser-algorithms/CHANGELOG.md#232) (patch) +- Updated [`@csstools/media-query-list-parser`](https://github.com/csstools/postcss-plugins/tree/main/packages/media-query-list-parser) to [`2.1.5`](https://github.com/csstools/postcss-plugins/tree/main/packages/media-query-list-parser/CHANGELOG.md#215) (patch) + +### 2.0.2 + +_August 5, 2023_ + +- Updated [`@csstools/media-query-list-parser`](https://github.com/csstools/postcss-plugins/tree/main/packages/media-query-list-parser) to [`2.1.4`](https://github.com/csstools/postcss-plugins/tree/main/packages/media-query-list-parser/CHANGELOG.md#214) (patch) + +### 2.0.1 + +_July 24, 2023_ + +- Updated [`@csstools/css-tokenizer`](https://github.com/csstools/postcss-plugins/tree/main/packages/css-tokenizer) to [`2.2.0`](https://github.com/csstools/postcss-plugins/tree/main/packages/css-tokenizer/CHANGELOG.md#220) (minor) +- Updated [`@csstools/css-parser-algorithms`](https://github.com/csstools/postcss-plugins/tree/main/packages/css-parser-algorithms) to [`2.3.1`](https://github.com/csstools/postcss-plugins/tree/main/packages/css-parser-algorithms/CHANGELOG.md#231) (patch) +- Updated [`@csstools/media-query-list-parser`](https://github.com/csstools/postcss-plugins/tree/main/packages/media-query-list-parser) to [`2.1.3`](https://github.com/csstools/postcss-plugins/tree/main/packages/media-query-list-parser/CHANGELOG.md#213) (patch) + +### 2.0.0 + +_July 3, 2023_ + +- Change license to `MIT-0` ([read more about this change in the blog post](https://preset-env.cssdb.org/blog/license-change/)) +- Updated [`@csstools/css-parser-algorithms`](https://github.com/csstools/postcss-plugins/tree/main/packages/css-parser-algorithms) to [`2.3.0`](https://github.com/csstools/postcss-plugins/tree/main/packages/css-parser-algorithms/CHANGELOG.md#230) (minor) +- Updated [`@csstools/media-query-list-parser`](https://github.com/csstools/postcss-plugins/tree/main/packages/media-query-list-parser) to [`2.1.2`](https://github.com/csstools/postcss-plugins/tree/main/packages/media-query-list-parser/CHANGELOG.md#212) (patch) + +### 1.0.4 + +_June 21, 2023_ + +- Updated `@csstools/media-query-list-parser` to `2.1.1` (patch) + + +### 1.0.3 + +_June 1, 2023_ + +- Updated `@csstools/media-query-list-parser` to `2.1.0` (minor) + + +### 1.0.2 + +_April 10, 2023_ + +- Updated `@csstools/css-tokenizer` to `2.1.1` (patch) +- Updated `@csstools/css-parser-algorithms` to `2.1.1` (patch) +- Updated `@csstools/media-query-list-parser` to `2.0.4` (patch) + +### 1.0.1 + +_January 28, 2023_ + +- Improve `types` declaration in `package.json` +- Updated `@csstools/css-parser-algorithms` to `2.0.0` (major) +- Updated `@csstools/css-tokenizer` to `2.0.0` (major) +- Updated `@csstools/media-query-list-parser` to `2.0.0` (major) + +### 1.0.0 + +_November 14, 2022_ + +- Initial version diff --git a/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/LICENSE.md b/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/LICENSE.md new file mode 100644 index 00000000..e8ae93b9 --- /dev/null +++ b/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/LICENSE.md @@ -0,0 +1,18 @@ +MIT No Attribution (MIT-0) + +Copyright © CSSTools Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the “Software”), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so. + +THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/README.md b/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/README.md new file mode 100644 index 00000000..8ed8ca89 --- /dev/null +++ b/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/README.md @@ -0,0 +1,75 @@ +# PostCSS Media Queries Aspect-Ratio Number Values [<img src="https://postcss.github.io/postcss/logo.svg" alt="PostCSS Logo" width="90" height="90" align="right">][PostCSS] + +[<img alt="npm version" src="https://img.shields.io/npm/v/@csstools/postcss-media-queries-aspect-ratio-number-values.svg" height="20">][npm-url] [<img alt="CSS Standard Status" src="https://cssdb.org/images/badges/media-queries-aspect-ratio-number-values.svg" height="20">][css-url] [<img alt="Build Status" src="https://github.com/csstools/postcss-plugins/workflows/test/badge.svg" height="20">][cli-url] [<img alt="Discord" src="https://shields.io/badge/Discord-5865F2?logo=discord&logoColor=white">][discord] + +```bash +npm install @csstools/postcss-media-queries-aspect-ratio-number-values --save-dev +``` + +[PostCSS Media Queries Aspect-Ratio Number Values] lets you use non-integer numbers and `calc()` in `aspect-ratio` feature queries following the [Media Queries 4 Specification]. + +```pcss +@media (min-aspect-ratio: 1.77) {} + +/* becomes */ + +@media (min-aspect-ratio: 177/100) {} +``` + +## Usage + +Add [PostCSS Media Queries Aspect-Ratio Number Values] to your project: + +```bash +npm install postcss @csstools/postcss-media-queries-aspect-ratio-number-values --save-dev +``` + +Use it as a [PostCSS] plugin: + +```js +const postcss = require('postcss'); +const postcssMediaQueriesAspectRatioNumberValues = require('@csstools/postcss-media-queries-aspect-ratio-number-values'); + +postcss([ + postcssMediaQueriesAspectRatioNumberValues(/* pluginOptions */) +]).process(YOUR_CSS /*, processOptions */); +``` + +[PostCSS Media Queries Aspect-Ratio Number Values] runs in all Node environments, with special +instructions for: + +- [Node](INSTALL.md#node) +- [PostCSS CLI](INSTALL.md#postcss-cli) +- [PostCSS Load Config](INSTALL.md#postcss-load-config) +- [Webpack](INSTALL.md#webpack) +- [Next.js](INSTALL.md#nextjs) +- [Gulp](INSTALL.md#gulp) +- [Grunt](INSTALL.md#grunt) + +## Options + +### preserve + +The `preserve` option determines whether the original notation +is preserved. By default, it is not preserved. + +```js +postcssMediaQueriesAspectRatioNumberValues({ preserve: true }) +``` + +```pcss +@media (min-aspect-ratio: 1.77) {} + +/* becomes */ + +@media (min-aspect-ratio: 1.77),(min-aspect-ratio: 177/100) {} +``` + +[cli-url]: https://github.com/csstools/postcss-plugins/actions/workflows/test.yml?query=workflow/test +[css-url]: https://cssdb.org/#media-queries-aspect-ratio-number-values +[discord]: https://discord.gg/bUadyRwkJS +[npm-url]: https://www.npmjs.com/package/@csstools/postcss-media-queries-aspect-ratio-number-values + +[PostCSS]: https://github.com/postcss/postcss +[PostCSS Media Queries Aspect-Ratio Number Values]: https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-media-queries-aspect-ratio-number-values +[Media Queries 4 Specification]: https://www.w3.org/TR/mediaqueries-4/#aspect-ratio diff --git a/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/dist/index.cjs b/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/dist/index.cjs new file mode 100644 index 00000000..836078f8 --- /dev/null +++ b/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/dist/index.cjs @@ -0,0 +1 @@ +"use strict";var e=require("@csstools/media-query-list-parser"),r=require("@csstools/css-parser-algorithms"),n=require("@csstools/css-tokenizer");const o=1e5,t=2147483647;function transformMediaFeatureValue(a){if(Array.isArray(a.value)&&e.matchesRatioExactly(a.value)){const e=[];for(let o=0;o<a.value.length;o++){const t=a.value[o];r.isTokenNode(t)&&t.value[0]===n.TokenType.Number?e.push(t):r.isFunctionNode(t)&&"calc"===t.getName().toLowerCase()&&e.push(t)}if(2!==e.length)return;const i=e[0],u=a.value.indexOf(i),s=e[1],l=a.value.indexOf(s);if(r.isTokenNode(s)&&s.value[0]===n.TokenType.Number&&0===s.value[4].value)return a.value.splice(u,1,new r.TokenNode([n.TokenType.Number,t.toString(),-1,-1,{value:t,type:n.NumberType.Integer}])),void a.value.splice(l,1,new r.TokenNode([n.TokenType.Number,"1",-1,-1,{value:1,type:n.NumberType.Integer}]));if(r.isTokenNode(i)&&i.value[0]===n.TokenType.Number&&i.value[4].type===n.NumberType.Integer&&r.isTokenNode(s)&&s.value[0]===n.TokenType.Number&&s.value[4].type===n.NumberType.Integer)return;let c=null,p=null;if(r.isFunctionNode(i)&&"calc"===i.getName().toLowerCase()){if(i.toString().includes(o.toString()))return;c=modifyCalc(i)}if(r.isFunctionNode(s)&&"calc"===s.getName().toLowerCase()){if(s.toString().includes(o.toString()))return;p=modifyCalc(s)}if(r.isTokenNode(i)&&i.value[0]===n.TokenType.Number&&r.isTokenNode(s)&&s.value[0]===n.TokenType.Number){const e=i.value,t=s.value,a=Math.round(e[4].value*o),u=Math.round(t[4].value*o),l=greatestCommonDivisor(a,u);c=new r.TokenNode([n.TokenType.Number,Math.round(a/l).toString(),-1,-1,{value:Math.round(a/l),type:n.NumberType.Integer}]),p=new r.TokenNode([n.TokenType.Number,Math.round(u/l).toString(),-1,-1,{value:Math.round(u/l),type:n.NumberType.Integer}])}else{if(r.isTokenNode(i)&&i.value[0]===n.TokenType.Number){const e=i.value;c=new r.TokenNode([n.TokenType.Number,Math.round(e[4].value*o).toString(),-1,-1,{value:Math.round(e[4].value*o),type:n.NumberType.Integer}])}if(r.isTokenNode(s)&&s.value[0]===n.TokenType.Number){const e=s.value;p=new r.TokenNode([n.TokenType.Number,Math.round(e[4].value*o).toString(),-1,-1,{value:Math.round(e[4].value*o),type:n.NumberType.Integer}])}}return c&&p?(a.value.splice(u,1,c),void a.value.splice(l,1,p)):void 0}const i=Array.isArray(a.value)?a.value:[a.value];for(let e=0;e<i.length;e++){const t=i[e];if(r.isTokenNode(t)){const u=t.value;if(u[0]!==n.TokenType.Number)return;if(u[4].type===n.NumberType.Integer)return i.splice(e+1,0,new r.TokenNode([n.TokenType.Delim,"/",-1,-1,{value:"/"}]),new r.TokenNode([n.TokenType.Number,"1",-1,-1,{value:1,type:n.NumberType.Integer}])),void(a.value=i);if(u[4].type===n.NumberType.Number){const t=Math.round(u[4].value*o),s=greatestCommonDivisor(t,o);return i.splice(e,1,new r.TokenNode([n.TokenType.Number,Math.round(t/s).toString(),-1,-1,{value:Math.round(t/s),type:n.NumberType.Integer}]),new r.TokenNode([n.TokenType.Delim,"/",-1,-1,{value:"/"}]),new r.TokenNode([n.TokenType.Number,Math.round(o/s).toString(),-1,-1,{value:Math.round(o/s),type:n.NumberType.Integer}])),void(a.value=i)}return}if(r.isFunctionNode(t)&&"calc"===t.getName().toLowerCase())return i.splice(e,1,modifyCalc(t),new r.TokenNode([n.TokenType.Delim,"/",-1,-1,{value:"/"}]),new r.TokenNode([n.TokenType.Number,o.toString(),-1,-1,{value:o,type:n.NumberType.Integer}])),void(a.value=i)}}function modifyCalc(e){return new r.FunctionNode([n.TokenType.Function,"calc(",-1,-1,{value:"calc("}],[n.TokenType.CloseParen,")",-1,-1,void 0],[new r.SimpleBlockNode([n.TokenType.OpenParen,"(",-1,-1,void 0],[n.TokenType.CloseParen,")",-1,-1,void 0],e.value),new r.WhitespaceNode([[n.TokenType.Whitespace," ",-1,-1,void 0]]),new r.TokenNode([n.TokenType.Delim,"*",-1,-1,{value:"*"}]),new r.WhitespaceNode([[n.TokenType.Whitespace," ",-1,-1,void 0]]),new r.TokenNode([n.TokenType.Number,o.toString(),-1,-1,{value:o,type:n.NumberType.Integer}])])}function greatestCommonDivisor(e,r){if(Number.isNaN(e)||Number.isNaN(r))throw new Error("Unexpected 'NaN' when calculating the greatest common divisor.");if(!Number.isFinite(e)||!Number.isFinite(r))throw new Error("Unexpected 'Infinite' value when calculating the greatest common divisor.");for(r>e&&([e,r]=[r,e]);;){if(0==r)return e;if(0==(e%=r))return r;r%=e}}const a=new Set(["aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio"]);function transformMediaQueryList(r,n){const o=e.parse(r,{preserveInvalidMediaQueries:!0,onParseError:()=>{throw new Error(`Unable to parse media query "${r}"`)}}),t=new Set(o.map((e=>e.toString())));return o.flatMap((r=>{if(e.isMediaQueryInvalid(r))return[r.toString()];const o=e.cloneMediaQuery(r);o.walk((r=>{const n=r.node;if(e.isMediaFeaturePlain(n)||e.isMediaFeatureRangeNameValue(n)||e.isMediaFeatureRangeValueName(n)){const e=n.name.getName().toLowerCase();if(!a.has(e))return;transformMediaFeatureValue(n.value)}else if(e.isMediaFeatureRangeValueNameValue(n)){const e=n.name.getName().toLowerCase();if(!a.has(e))return;transformMediaFeatureValue(n.valueOne);transformMediaFeatureValue(n.valueTwo)}else;}));const i=r.toString(),u=o.toString();return u===i||t.has(u)?[i]:n?[i,u]:[u]})).join(",")}const creator=e=>{const r=Object.assign({preserve:!1},e);return{postcssPlugin:"postcss-media-queries-aspect-ratio-number-values",AtRule(e,{result:n}){if("media"!==e.name.toLowerCase())return;const o=e.params.toLowerCase();if(!(o.includes("aspect-ratio")||o.includes("min-aspect-ratio")||o.includes("max-aspect-ratio")||o.includes("device-aspect-ratio")||o.includes("min-device-aspect-ratio")||o.includes("max-device-aspect-ratio")))return;let t;try{if(t=transformMediaQueryList(e.params,r.preserve),t===e.params)return}catch(r){return void e.warn(n,`Failed to transform @media params for "${e.params}" with message: "${r.message}"`)}e.cloneBefore({params:t}),e.remove()}}};creator.postcss=!0,module.exports=creator; diff --git a/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/dist/index.d.ts b/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/dist/index.d.ts new file mode 100644 index 00000000..92223f79 --- /dev/null +++ b/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/dist/index.d.ts @@ -0,0 +1,8 @@ +import type { PluginCreator } from 'postcss'; +/** postcss-media-queries-aspect-ratio-number-values plugin options */ +export type pluginOptions = { + /** Preserve the original notation. default: false */ + preserve?: boolean; +}; +declare const creator: PluginCreator<pluginOptions>; +export default creator; diff --git a/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/dist/index.mjs b/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/dist/index.mjs new file mode 100644 index 00000000..ceb624c5 --- /dev/null +++ b/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/dist/index.mjs @@ -0,0 +1 @@ +import{matchesRatioExactly as e,parse as r,isMediaQueryInvalid as t,cloneMediaQuery as a,isMediaFeaturePlain as n,isMediaFeatureRangeNameValue as o,isMediaFeatureRangeValueName as i,isMediaFeatureRangeValueNameValue as u}from"@csstools/media-query-list-parser";import{isTokenNode as s,isFunctionNode as l,TokenNode as c,FunctionNode as m,SimpleBlockNode as v,WhitespaceNode as d}from"@csstools/css-parser-algorithms";import{TokenType as p,NumberType as f}from"@csstools/css-tokenizer";const g=1e5,w=2147483647;function transformMediaFeatureValue(r){if(Array.isArray(r.value)&&e(r.value)){const e=[];for(let t=0;t<r.value.length;t++){const a=r.value[t];s(a)&&a.value[0]===p.Number?e.push(a):l(a)&&"calc"===a.getName().toLowerCase()&&e.push(a)}if(2!==e.length)return;const t=e[0],a=r.value.indexOf(t),n=e[1],o=r.value.indexOf(n);if(s(n)&&n.value[0]===p.Number&&0===n.value[4].value)return r.value.splice(a,1,new c([p.Number,w.toString(),-1,-1,{value:w,type:f.Integer}])),void r.value.splice(o,1,new c([p.Number,"1",-1,-1,{value:1,type:f.Integer}]));if(s(t)&&t.value[0]===p.Number&&t.value[4].type===f.Integer&&s(n)&&n.value[0]===p.Number&&n.value[4].type===f.Integer)return;let i=null,u=null;if(l(t)&&"calc"===t.getName().toLowerCase()){if(t.toString().includes(g.toString()))return;i=modifyCalc(t)}if(l(n)&&"calc"===n.getName().toLowerCase()){if(n.toString().includes(g.toString()))return;u=modifyCalc(n)}if(s(t)&&t.value[0]===p.Number&&s(n)&&n.value[0]===p.Number){const e=t.value,r=n.value,a=Math.round(e[4].value*g),o=Math.round(r[4].value*g),s=greatestCommonDivisor(a,o);i=new c([p.Number,Math.round(a/s).toString(),-1,-1,{value:Math.round(a/s),type:f.Integer}]),u=new c([p.Number,Math.round(o/s).toString(),-1,-1,{value:Math.round(o/s),type:f.Integer}])}else{if(s(t)&&t.value[0]===p.Number){const e=t.value;i=new c([p.Number,Math.round(e[4].value*g).toString(),-1,-1,{value:Math.round(e[4].value*g),type:f.Integer}])}if(s(n)&&n.value[0]===p.Number){const e=n.value;u=new c([p.Number,Math.round(e[4].value*g).toString(),-1,-1,{value:Math.round(e[4].value*g),type:f.Integer}])}}return i&&u?(r.value.splice(a,1,i),void r.value.splice(o,1,u)):void 0}const t=Array.isArray(r.value)?r.value:[r.value];for(let e=0;e<t.length;e++){const a=t[e];if(s(a)){const n=a.value;if(n[0]!==p.Number)return;if(n[4].type===f.Integer)return t.splice(e+1,0,new c([p.Delim,"/",-1,-1,{value:"/"}]),new c([p.Number,"1",-1,-1,{value:1,type:f.Integer}])),void(r.value=t);if(n[4].type===f.Number){const a=Math.round(n[4].value*g),o=greatestCommonDivisor(a,g);return t.splice(e,1,new c([p.Number,Math.round(a/o).toString(),-1,-1,{value:Math.round(a/o),type:f.Integer}]),new c([p.Delim,"/",-1,-1,{value:"/"}]),new c([p.Number,Math.round(g/o).toString(),-1,-1,{value:Math.round(g/o),type:f.Integer}])),void(r.value=t)}return}if(l(a)&&"calc"===a.getName().toLowerCase())return t.splice(e,1,modifyCalc(a),new c([p.Delim,"/",-1,-1,{value:"/"}]),new c([p.Number,g.toString(),-1,-1,{value:g,type:f.Integer}])),void(r.value=t)}}function modifyCalc(e){return new m([p.Function,"calc(",-1,-1,{value:"calc("}],[p.CloseParen,")",-1,-1,void 0],[new v([p.OpenParen,"(",-1,-1,void 0],[p.CloseParen,")",-1,-1,void 0],e.value),new d([[p.Whitespace," ",-1,-1,void 0]]),new c([p.Delim,"*",-1,-1,{value:"*"}]),new d([[p.Whitespace," ",-1,-1,void 0]]),new c([p.Number,g.toString(),-1,-1,{value:g,type:f.Integer}])])}function greatestCommonDivisor(e,r){if(Number.isNaN(e)||Number.isNaN(r))throw new Error("Unexpected 'NaN' when calculating the greatest common divisor.");if(!Number.isFinite(e)||!Number.isFinite(r))throw new Error("Unexpected 'Infinite' value when calculating the greatest common divisor.");for(r>e&&([e,r]=[r,e]);;){if(0==r)return e;if(0==(e%=r))return r;r%=e}}const N=new Set(["aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio"]);function transformMediaQueryList(e,s){const l=r(e,{preserveInvalidMediaQueries:!0,onParseError:()=>{throw new Error(`Unable to parse media query "${e}"`)}}),c=new Set(l.map((e=>e.toString())));return l.flatMap((e=>{if(t(e))return[e.toString()];const r=a(e);r.walk((e=>{const r=e.node;if(n(r)||o(r)||i(r)){const e=r.name.getName().toLowerCase();if(!N.has(e))return;transformMediaFeatureValue(r.value)}else if(u(r)){const e=r.name.getName().toLowerCase();if(!N.has(e))return;transformMediaFeatureValue(r.valueOne);transformMediaFeatureValue(r.valueTwo)}else;}));const l=e.toString(),m=r.toString();return m===l||c.has(m)?[l]:s?[l,m]:[m]})).join(",")}const creator=e=>{const r=Object.assign({preserve:!1},e);return{postcssPlugin:"postcss-media-queries-aspect-ratio-number-values",AtRule(e,{result:t}){if("media"!==e.name.toLowerCase())return;const a=e.params.toLowerCase();if(!(a.includes("aspect-ratio")||a.includes("min-aspect-ratio")||a.includes("max-aspect-ratio")||a.includes("device-aspect-ratio")||a.includes("min-device-aspect-ratio")||a.includes("max-device-aspect-ratio")))return;let n;try{if(n=transformMediaQueryList(e.params,r.preserve),n===e.params)return}catch(r){return void e.warn(t,`Failed to transform @media params for "${e.params}" with message: "${r.message}"`)}e.cloneBefore({params:n}),e.remove()}}};creator.postcss=!0;export{creator as default}; diff --git a/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/dist/transform-media-feature-value.d.ts b/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/dist/transform-media-feature-value.d.ts new file mode 100644 index 00000000..1808b946 --- /dev/null +++ b/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/dist/transform-media-feature-value.d.ts @@ -0,0 +1,2 @@ +import { MediaFeatureValue } from '@csstools/media-query-list-parser'; +export declare function transformMediaFeatureValue(value: MediaFeatureValue): void; diff --git a/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/dist/transform-media-query-list.d.ts b/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/dist/transform-media-query-list.d.ts new file mode 100644 index 00000000..a2fcb6a9 --- /dev/null +++ b/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/dist/transform-media-query-list.d.ts @@ -0,0 +1 @@ +export declare function transformMediaQueryList(params: string, preserve: boolean): string; diff --git a/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/package.json b/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/package.json new file mode 100644 index 00000000..b7c3b033 --- /dev/null +++ b/node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values/package.json @@ -0,0 +1,87 @@ +{ + "name": "@csstools/postcss-media-queries-aspect-ratio-number-values", + "description": "Use number values in aspect-ratio media queries.", + "version": "2.0.3", + "contributors": [ + { + "name": "Antonio Laguna", + "email": "antonio@laguna.es", + "url": "https://antonio.laguna.es" + }, + { + "name": "Romain Menke", + "email": "romainmenke@gmail.com" + } + ], + "license": "MIT-0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "engines": { + "node": "^14 || ^16 || >=18" + }, + "main": "dist/index.cjs", + "module": "dist/index.mjs", + "types": "dist/index.d.ts", + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": "./dist/index.mjs", + "require": "./dist/index.cjs", + "default": "./dist/index.mjs" + } + }, + "files": [ + "CHANGELOG.md", + "LICENSE.md", + "README.md", + "dist" + ], + "dependencies": { + "@csstools/css-parser-algorithms": "^2.3.2", + "@csstools/css-tokenizer": "^2.2.1", + "@csstools/media-query-list-parser": "^2.1.5" + }, + "peerDependencies": { + "postcss": "^8.4" + }, + "devDependencies": { + "@csstools/postcss-tape": "*" + }, + "scripts": { + "build": "rollup -c ../../rollup/default.mjs", + "docs": "node ../../.github/bin/generate-docs/install.mjs && node ../../.github/bin/generate-docs/readme.mjs", + "lint": "node ../../.github/bin/format-package-json.mjs", + "prepublishOnly": "npm run build && npm run test", + "test": "node .tape.mjs && node ./test/_import.mjs && node ./test/_require.cjs", + "test:rewrite-expects": "REWRITE_EXPECTS=true node .tape.mjs" + }, + "homepage": "https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-media-queries-aspect-ratio-number-values#readme", + "repository": { + "type": "git", + "url": "https://github.com/csstools/postcss-plugins.git", + "directory": "plugins/postcss-media-queries-aspect-ratio-number-values" + }, + "bugs": "https://github.com/csstools/postcss-plugins/issues", + "keywords": [ + "aspect-ratio", + "media queries", + "postcss-plugin" + ], + "csstools": { + "cssdbId": "media-queries-aspect-ratio-number-values", + "exportName": "postcssMediaQueriesAspectRatioNumberValues", + "humanReadableName": "PostCSS Media Queries Aspect-Ratio Number Values", + "specUrl": "https://www.w3.org/TR/mediaqueries-4/#aspect-ratio" + }, + "volta": { + "extends": "../../package.json" + } +} |
